Part Number Hot Search : 
5962F NJU26 NTE5895 MN6168 NJU26 N60UF C2002 ISD2540S
Product Description
Full Text Search
 

To Download PCA9629APW Datasheet File

  If you can't view the Datasheet, Please click here to try to view without PDF Reader .  
 
 


  Datasheet File OCR Text:
  1. general description the pca9629a is an i 2 c-bus controlled low-power cmos device that provides all the logic and control required to drive a four phase stepper motor. pca9629a is intended to be used with external high current drivers to drive the motor co ils. the pca9629a supports three stepper motor drive formats: one-phase (wave drive), two-phase, and half-step. in addition, when used as inputs, four general purpose input/outputs (gpios) allow sensing of logic level output from optical interrupter modules and generate active low interrupt signal on the int pin of pca9629a. this is a useful feature in sensing home position of motor shaft or reference for step pulses. upon interrupt, the pca9629a can be programmed to automatically stop the motor, re-start motor, enable extra steps or reverse the direction of rotation of motor. output wave train is programmable using co ntrol registers. the control registers are programmed via the i 2 c-bus. features built into the pca9629a provide highly flexible control of stepper motor, off-load bus master/micro and significantly reduce i 2 c-bus traffic. these include control of step size, number of steps per single command, number of actions from 1 to 255 or continuous rotations and direction of rotation. re-start motor for new speed and operation without waiting for motor stop. a ramp-up on start and/or ramp-down on stop is also provided with re -enable ramp-up or ramp-down to change the ramp rate curve on the fly. the pca9629a is available in a 16-pin t ssop package and is specified over the ? 40 ? cto +85 ? c industrial temperature range. 2. features and benefits ? generate motor coil drive phase sequence signals with four outputs for use with external high current drivers to off-load cpu ? four balanced push-pull type outputs capable of sinking 25 ma or sourcing 25 ma for glueless connection to external high curren t drivers needed to drive unipolar stepper motor coils ? up to 1000 pf loads with 100 ns rise and fall times ? built-in 1 mhz oscillator requires no external components ? stepper motor drive control logic ? one-phase (wave drive), two-phase, and half-step drive format logic level outputs ? programmable step rate: 333.3 kpps to 0.3 pps with ? 3 % accuracy ? programmable ramp-up on start and ramp-down to stop ? programmable re-enable ramp-up or ramp-down to change ramp rate curve on the fly ? programmable re-start motor with new speed and operation while motor is still running ? programmable motor action either multiple times (1 to 255) or continuously ? programmable loop delay timer for motor reversal mode pca9629a fm+ i 2 c-bus advanced stepper motor controller rev. 2 ? 21 march 2014 product data sheet
pca9629a all information provided in this document is subject to legal disclaimers. ? nxp semiconductors n.v. 2014. all rights re served. product data sheet rev. 2 ? 21 march 2014 2 of 59 nxp semiconductors pca9629a fm+ i 2 c-bus advanced stepper motor controller ? programmable steps with clockwise and/or counter-clockwise control ? direction control of motor shaft ? selectable active hold (last state), power on, power off or released states for motor shaft ? 32-bit step counter to count output steps ? interrupt features ? active low open-drain interrupt output ? programmable watchdog timer with option to generate interrupt, reset device or stop motor ? programmable motor stop interrupt ? sensor enabled drive control: linked to interrupt from gpio pins ? programmable interrupt mask control for input sources ? four stepper motor drive outputs: out0 to out3 ? configured to drive stepper motor outputs and capable to read back the last output states when motor is stopped ? both output phase and state can be changed at any time ? programmable time-out timer to set all outputs to zeros wh en motor is stopped ? configured as general purpose outputs to drive (source/sink) loads up to 25 ma ? four general purpose i/os: p0 to p3 ? configured to sense logic level outputs from optical interrupter photo transistor circuit ? programmable filter timer to suppress spike or noise for p0 and p1 inputs ? configured as outputs to drive (source/sink) leds or other loads up to 25 ma ? 4.5 v to 5.5 v operation ? 1 mhz fast-mode plus (fm+) compatible i 2 c-bus serial interface with 30 ma high drive capability on sda output for driving high capacitive buses ? active low reset (reset ) input pin resets device to power-up default state: can be used to recover from bus stuck condition ? all call address allows programming of more than one device at the same time with the same parameters ? 16 programmable slave addresses using two address pins ? ? 40 ? c to +85 ? c operation ? esd protection exceeds 2000 v hbm per jesd22-a114 and 1000 v cdm per jesd22c101 ? latch-up testing is done to jedec standard jesd78 which exceeds 100 ma ? package offered: tssop16 3. applications ? amusement machines ? gaming and slot machines ? consumer home appliances or toys ? industrial automation ? hvac and building climate control systems ? robotics ? security and surveillance camera
pca9629a all information provided in this document is subject to legal disclaimers. ? nxp semiconductors n.v. 2014. all rights re served. product data sheet rev. 2 ? 21 march 2014 3 of 59 nxp semiconductors pca9629a fm+ i 2 c-bus advanced stepper motor controller ? variable-speed fans and pumps ? vending machines 4. ordering information 4.1 ordering options 5. block diagram table 1. ordering information type number topside marking package name description version PCA9629APW pa9629a tssop16 plastic thin shrink small outline package; 16 leads; body width 4.4 mm sot403-1 table 2. ordering options type number orderable part number package packing method minimum order quantity temperature PCA9629APW PCA9629APWj t ssop16 reel 13? q1/t1 *standard mark smd 2500 t amb = ? 40 ? c to +85 ?c remark: all i/os are set to inputs at power-up and reset. fig 1. pca9629a block diagram ad0 ad1 002aah527 i 2 c-bus control input filter pca9629a power-on reset scl sda v dd v ss control registers reset input register gpio and interrupt output control p0/det int gpio with input filter on p0/p1 interrupt handler loop delay timer ramp control total steps and pulse width counters output phase sequence generator 200 k watchdog timer 1 mhz oscillator motor controller coil excitation logic p3 out0 out3 0 1 1: motor outputs 0: gpo outputs
pca9629a all information provided in this document is subject to legal disclaimers. ? nxp semiconductors n.v. 2014. all rights re served. product data sheet rev. 2 ? 21 march 2014 4 of 59 nxp semiconductors pca9629a fm+ i 2 c-bus advanced stepper motor controller 6. pinning information 6.1 pinning 6.2 pin description fig 2. pin configuration for tssop16 PCA9629APW p0/det v dd p1 sda p2 scl p3 int ad0 out0 ad1 out1 reset out2 v ss out3 002aah528 1 2 3 4 5 6 7 8 10 9 12 11 14 13 16 15 table 3. pin description symbol pin type description p0/det 1 i/o input/output 0 (output is 25 ma push-pull) or detection of motor position input (see details in section 7.3.21 ? mcntl ? motor control register ? ) p1 2 i/o input/output 1 (output is 25 ma push-pull) p2 3 i/o input/output 2 (output is 25 ma push-pull) p3 4 i/o input/output 3 (output is 25 ma push-pull) ad0 5 i address input 0 ad1 6 i address input 1 reset 7 i active low reset input with 1 ? s filter v ss 8 ground supply ground out3 9 o control 25 ma push-pull output 3 out2 10 o control 25 ma push-pull output 2 out1 11 o control 25 ma push-pull output 1 out0 12 o control 25 ma push-pull output 0 int 13 o active low interrupt output; open-drain scl 14 i serial clock line sda 15 i/o serial data line; open-drain capable of sinking 30 ma v dd 16 power supply supply voltage
pca9629a all information provided in this document is subject to legal disclaimers. ? nxp semiconductors n.v. 2014. all rights re served. product data sheet rev. 2 ? 21 march 2014 5 of 59 nxp semiconductors pca9629a fm+ i 2 c-bus advanced stepper motor controller 7. functional description refer to figure 1 ? pca9629a block diagram ? . 7.1 device address following a start conditio n, the bus master must send t he target slave address followed by a read or write operation. the slave address of the pca9629a is shown in figure 3 . slave address pins ad1 and ad0 choose one o f 16 slave addresses. to conserve power, no internal pull-up resistors are incorporated on ad1 and ad0. ta b l e 4 shows all 16 slave addresses by connecting the ad0 and ad1 to v dd , v ss , scl or sda. the last bit of the first byte defines the read ing from or writing to the pca9629a. when set to logic 1 a read is selected, while logic 0 selects a write operation. fig 3. pca9629a device address table 4. pca9629a address map ad1 ad0 device family high-order address bits variable portion of address address a6 a5 a4 a3 a2 a1 a0 v ss v ss 010000040h v ss v dd 010000142h v dd v ss 010001044h v dd v dd 010001146h v ss scl010010048h v ss sda01001014ah v dd scl01001104ch v dd sda01001114eh scl v ss 010100050h sda v ss 010100152h scl v dd 010101054h sda v dd 010101156h sclscl010110058h sclsda01011015ah sdascl01011105ch sdasda01011115eh r/w 002aad905 0 1 0 a3 a2 a1 a0 programmable slave address fixed
pca9629a all information provided in this document is subject to legal disclaimers. ? nxp semiconductors n.v. 2014. all rights re served. product data sheet rev. 2 ? 21 march 2014 6 of 59 nxp semiconductors pca9629a fm+ i 2 c-bus advanced stepper motor controller 7.2 command register following the successful acknowledgement of the slave address and a write bit, the bus master sends a byte to the pca9629a. this byte is stored in the command register. at power-up, the command register defaults to 80h, with the ai bit set to ?1? and the lowest seven bits set to ?0?. the lowest six bits are used as a pointer to determine which register will be accessed. only a comman d register code with the six leas t significant bits equal to the 35 allowable values as defined in table 5 ? register summary ? are acknowledged. reserved or undefined command codes are not acknowledged. the most significant bit of the command register is for au to-increment. if the auto-increment flag is set, the six low-order bits of the control register are automatically incremented after a read or write. this allows the user to program the registers sequentially. the contents of these bits will roll over to ?00 0000? afte r the last register (address = 22h) is accessed. only the six least significant bits are affected by the ai flag. unused bits must be programmed with zeroes. 7.3 register definitions fig 4. command register 0 002aad906 1 0 0 0 0 0 0 d0 ai - d5 d4 d3 d2 d1 register number auto-increment default at power-up or after reset table 5. register summary register number d5 d4 d3 d2 d1 d0 name type function 00h 000000mode read/write mode register 01h 000001wdtoi read/write watch dog time-out interval register 02h 000010wdcntl read/write watch dog control register 03h 000011io_cfg read/write i/o configuration register 04h 000100intmode read/write interrupt mode register 05h 000101msk read/write mask interrupt register 06h 000110intstat read only interrupt status register 07h 000111ip read only input port register 08h 001000int_mtr_act read/write interrupt motor action control register 09h 001001extrast eps0 read/write count value for extra steps for intp0 0ah 001010extrast eps1 read/write count value for extra steps for intp1 0bh 001011op_cfg_phs read/write output port configuration and phase control register 0ch 001100op_stat_to read/write output port state and time-out control register 0dh 001101 rucntl read/write ramp up control register 0eh 001110 rdctnl read/write ramp down control register
pca9629a all information provided in this document is subject to legal disclaimers. ? nxp semiconductors n.v. 2014. all rights re served. product data sheet rev. 2 ? 21 march 2014 7 of 59 nxp semiconductors pca9629a fm+ i 2 c-bus advanced stepper motor controller [1] these registers marked ?reserved? should not be writte n, and the master will not be acknowledged when accessed. 0fh 001111pma read/write perform multiple of actions control register 10h 010000loopdly_cw read/write loop delay time for reversing from cw to ccw register 11h 010001loopdly_ccwread/write loop delay time for reversing from ccw to cw register 12h 010010cwscountl read/write number of steps cw low byte 13h 010011cwscounth read/write number of steps cw high byte 14h 010100ccwscountl read/write number of steps ccw low byte 15h 010101ccwscounth read/write number of steps ccw high byte 16h 010110cwpwl read/write step pulse width for cw rotation low byte 17h 010111cwpwh read/write step pulse width for cw rotation high byte 18h 011000ccwpwl read/write step pulse width for ccw rotation low byte 19h 011001ccwpwh read/write step pulse width for ccw rotation high byte 1ah 011010mcntl read/write motor start/stop and rotate direction control 1bh 011011subadr1 read/write i 2 c-bus subaddress 1 1ch 011100subadr2 read/write i 2 c-bus subaddress 2 1dh 011101subadr3 read/write i 2 c-bus subaddress 3 1eh 011110allcalladr read/write all call i 2 c-bus address 1fh 011111stepcount0 read only step counter byte0 20h 100000stepcount1 read only step counter byte1 21h 100001stepcount2 read only step counter byte2 22h 100010stepcount3 read only step counter byte3 23h to 3fh ------- - reserved [1] table 5. register summary ?continued register number d5 d4 d3 d2 d1 d0 name type function
pca9629a all information provided in this document is subject to legal disclaimers. ? nxp semiconductors n.v. 2014. all rights re served. product data sheet rev. 2 ? 21 march 2014 8 of 59 nxp semiconductors pca9629a fm+ i 2 c-bus advanced stepper motor controller 7.3.1 mode ? mode register 7.3.1.1 low-power sleep mo de, oscillator off (bit 6) this feature allows user to program the device in low-power sleep mode (internal oscillator off) to save power wh en motor output pins are idle. writing ?1? to this bit will be ignored and no effect if the motor is running (mcntl[7] = 1), otherwise the device will go into low- power sleep mode and de-assert int output pin if int pin is asserted, bu t the interrupt st atus bits will not be cl eared and keep the same value. as soon as the device enters into the low-power sleep mode, all motor output pins are forced driving low, all gpio pins are set as input with 3-state (high-impedance) output, and interrupt status bits will not allow change (even gpios input signal edge is changed or reading/writing to access the intstat register will not clear this re gister). user can still read or write to set motor parameter registers during low-power sleep mode. writing ?0? to this bit will bring the device back to normal operation mode. it takes 300 ? s maximum for the internal osc illator to be up and running ba ck to normal operation mode. timing on motor drive outputs and gpios control are not guaranteed if all registers are accessed within the 300 ? s window. the int output pin will be asserted again if any of the interrupt status bits are set before entering the low-power sleep mode and interrupt output pin is enabled (bit 5 = 0). table 6. mode - mode register (address 00h) bit description legend: * default value. address register bit access value description 00h mode 7 - 0* not used 6 r/w 1 low-power sleep mode. oscillator off. 0* normal mode. 5 r/w 1 disable int output pin 0* enable int output pin 4 r/w 1 outputs change on i 2 c-bus ack 0* outputs change on i 2 c-bus stop condition 3 r/w 1 pca9629a responds to i 2 c-bus subaddress 1 0* pca9629a does not respond to i 2 c-bus subaddress 1 2 r/w 1 pca9629a responds to i 2 c-bus subaddress 2 0* pca9629a does not respond to i 2 c-bus subaddress 2 1 r/w 1 pca9629a responds to i 2 c-bus subaddress 3 0* pca9629a does not respond to i 2 c-bus subaddress 3 0 r/w 1* pca9629a responds to all call i 2 c-bus address 0 pca9629a does not respond to all call i 2 c-bus address
pca9629a all information provided in this document is subject to legal disclaimers. ? nxp semiconductors n.v. 2014. all rights re served. product data sheet rev. 2 ? 21 march 2014 9 of 59 nxp semiconductors pca9629a fm+ i 2 c-bus advanced stepper motor controller 7.3.1.2 disable interrupt output pin (bit 5) this feature is useful when the hos t/micro/master does not want the int pin to toggle when interrupts occur. within pca9629a, when interrupts are enabled and interrupt event occurs, the actions related to the interrupt event are still carr ied out. however, if bit 5 = 1, the int pin does not show the activation of interrupt because the pin is disabled. if bit 5 = 0, the micro sees the actual status of the int pin. the only exception to this rule is when the wa tchdog timer is enabled in the ?interrupt and reset? mode (see section 7.3.2.2 ). in this case, the inte rrupt line toggles when the watchdog timer times out (even though bit 5 of this register is a ?1?). th is is because in the ?interrupt and reset mode? the part gets rese t (and hence bit 5 is cleared) when the timer times out. 7.3.1.3 outputs change on stop (bit 4) this feature can be used to synchronize the starting of the motor across multiple pca9629a devices on the bus at approximatel y the same time (within few microseconds of one another). the host controller can program all the pca9629as on the bus and then issue the i 2 c-bus stop condition. upon receiving th e stop condition, all the pca9629a devices on the bus start generating pulse sequences required to turn the motor. this feature is applicable only to the motor coil ou tputs of the device namely, out0 to out3. it is not applicable to the general -purpose i/os (p0 to p3). 7.3.2 watchdog timer the purpose of the watchdog timer is to recove r the pca9629a if the system it is used in enters an erroneous state. when the timer times out, the watchdog generates an interrupt to the host controller and, if programmed for reset or stop motor, resets pca9629a or motor is stopped if the user program fails to ?feed? the watchdog. to feed the watchdog, the user simply addresses the pca9629a ([start + slave address + start] or [start + slave address + stop]) within the watchdog time-out interval. only this sequence resets the watchdog. watchdog timer features: ? can be programmed to reset the pca9629a to por state if it is not periodically addressed ? can be programmed to stop the motor if it is not periodically addressed and motor is in start (running) state ? can be enabled by software and select one of three watchdog interrupt modes ? watchdog interrupt flag bit[5] in intstat register ? programmable 8-bit timer from one second to 255 seconds the watchdog timer should be used in the following manner: ? set the time-out interval value in wdtoi register ? set the mode of operation (interrupt only, interrupt and reset, or interrupt and stop motor) and enable the watc hdog using the wdcntl register ? address the pca9629a periodically before th e watchdog timer underflows to prevent reset/interrupt/motor stop ? read watchdog interrupt bi t (wdint) in intstat register to check for watchdog event
pca9629a all information provided in this document is subject to legal disclaimers. ? nxp semiconductors n.v. 2014. all rights re served. product data sheet rev. 2 ? 21 march 2014 10 of 59 nxp semiconductors pca9629a fm+ i 2 c-bus advanced stepper motor controller 7.3.2.1 wdtoi ? watchdog time-out interval register the watchdog time-out interval should be programmed in this register. the default value is ffh, which indicates a 255 second time-out in terval. the smallest va lue for the time-out interval is 01h, which indicates a one-se cond time-out interval. watchdog operation cannot be enabled with a zero second time-out interval. if user writes a zero value to this register, the timer does not start. 7.3.2.2 wdcntl ? watchdog control register this register controls the operation of the watchdog timer. watchdog timer can be enabled by setting the wden bit of this register. be fore enabling the watchdog timer, the watchdog interrupt flag wdint must be cleared (if it is set). the interrupt flag, motor stop flag and the reset flag are shared same bit (wdint) in intstat register. the wdmod bit determines the mode of operat ion. there are three modes of operation: ? interrupt only mode : this is the default mode of op eration. in this mode, when the watchdog timer times out, the interrupt flag is set (wdint bit) in intstat register. ? interrupt and re set mode: in this mode, when the wa tchdog timer times out, the reset flag is set (wdint bit) in intstat regist er and resets the chip to por state. all registers are set to default value except th e wdint bit stay ?1? in intstat register until read of or write to the intstat register. ? interrupt and stop motor mode: when the wa tchdog timer times out, the motor stop flag is set (wdint bit) in intstat register and motor is forced to stop (set off, logic 0 on out[3:0]) immediately regardless of the bit[3:0] setting in the op_stat_to register. user can change t he motor output state in op_stat_to register after wdint bit is cleared. table 7. wdtoi - watchdog time-out interval register (address 01h) bit description legend: * default value. address register bit access value description 01h wdtoi 7:0 r/w ffh* watchdog time-out interval table 8. wdcntl - watchdog control register (address 02h) bit description legend: * default value. address register bit access value description 02h wdcntl 7:3 read only 00h* reserved. 2:1 r/w 11 or 10 wdmod: watchdog interrupt and stop motor mode. 01 wdmod: watchdog interrupt and reset mode. 00* wdmod: watchdog interrupt only mode. 0 r/w 1 wden: watchdog enabled. 0* wden: watchdog disabled.
pca9629a all information provided in this document is subject to legal disclaimers. ? nxp semiconductors n.v. 2014. all rights re served. product data sheet rev. 2 ? 21 march 2014 11 of 59 nxp semiconductors pca9629a fm+ i 2 c-bus advanced stepper motor controller 7.3.3 io_cfg ? i/o configuration register the lower four bits of this register configures the direction of the i/o pins p0 to p3. if a bit in [3:0] is set (written with logic 1), the corresponding port pin is enabled as an input with high-impedance output driver. if the bit is cl eared (written with logic 0), the corresponding port pin is enabled as an output and the uppe r 4 bits of this register reflect the outgoing logic levels of these pins. at reset, the device?s ports p0 to p3 are inputs. 7.3.4 intmode ? interrupt mode register when interrupt( s) are enabled, bits [3:0] determine whether rising edge or falling edge of signal at p0 to p3 causes the interrupt to be generated. interrupts are latched and flag(s) are set in the corresponding bits of intstat register. when interrupts are masked using msk register, these bits have no effect. bits [6:4] are used to configure the pulse widt h of the input spike or noise to suppress for p0 to p1 as inte rrupt based inputs. table 9. io_cfg - i/o configuration re gister (address 03h) bit description legend: * default value. address register bit access value description 03h io_cfg 7:4 r/w 0000* reflects output logic levels when p[3:0] are configured as general purpose outputs. 3 r/w 1* p3 will be configured as input 0 p3 will be configured as output 2 r/w 1* p2 will be configured as input 0 p2 will be configured as output 1 r/w 1* p1 will be configured as input 0 p1 will be configured as output 0 r/w 1* p0 will be configured as input 0 p0 will be configured as output fig 5. simplified schematic for gpio control 002aah530 io_cfg - i/o configuration register ip - input port register (bit[3:0]) p0 to p3 read/write access from i 2 c-bus read only access from i 2 c-bus bit[3:0] bit[7:4]
pca9629a all information provided in this document is subject to legal disclaimers. ? nxp semiconductors n.v. 2014. all rights re served. product data sheet rev. 2 ? 21 march 2014 12 of 59 nxp semiconductors pca9629a fm+ i 2 c-bus advanced stepper motor controller table 10. intmode - interrupt mode register (address 04h) bit description legend: * default value. address register bit access value description 04h intmode 7 - 0* reserved 6:4 r/w pulse width of spike or noise that must be suppressed by the input filter for p0 and p1 inputs 111 to 100 10 ms 011 5 ms 010 1 ms 001* 500 ? s 000 0 s 3 r/w 1 interrupt occurs on falling edge for p3 0* interrupt occurs on rising edge for p3 2 r/w 1 interrupt occurs on falling edge for p2 0* interrupt occurs on rising edge for p2 1 r/w 1 interrupt occurs on falling edge for p1 0* interrupt occurs on rising edge for p1 0 r/w 1 interrupt occurs on falling edge for p0 0* interrupt occurs on rising edge for p0 fig 6. pca9629a interrupt logic 002aah531 mode[5] int wdmst wdint watchdog timer dq 1 dq 1 reading intstat register intmode rising edge detector falling edge detector p0 io_cfg[0] msk[0] intmode rising edge detector falling edge detector p3 io_cfg[3] msk[3] reading intstat register wdrst dq 1 reading intstat register op_cfg_phs[4] msk[4] motor stop detector mcntl[7]
pca9629a all information provided in this document is subject to legal disclaimers. ? nxp semiconductors n.v. 2014. all rights re served. product data sheet rev. 2 ? 21 march 2014 13 of 59 nxp semiconductors pca9629a fm+ i 2 c-bus advanced stepper motor controller 7.3.5 msk ? mask interrupt register upon power-up, all the internal interrupt latches are reset and interrupt flags cleared and interrupt mask bits [4:0] are set to logic 1, thus disabling interrupts from input ports p0 to p3 and motor stop caused by bit 7 in mcntl register. interrupts may be enabled by setting corresponding mask bits to logic 0. an additional control to enable or disable the int pin is provided by mode control register bit 5 (mode[5]). refer to ta b l e 6 . 7.3.6 intstat ? interrupt status register this register reflects the status of an interrupt. intstat is a read-only register. intp0 to intp3 interrupt caused by input port pins p0 to p3, respectively, and motor stop interrupt caused by bit 7 in mcntl register when this bit changes from 1 to 0. [1] reading or writing any value to th is register will clear this bit. table 11. msk - interrupt mask regist er (address 05h) bit description legend: * default value. address register bit access value description 05h msk 7:5 - 000* reserved 4 r/w 1* disable interrupt when motor is stopped 0 enable interrupt when motor is stopped 3 r/w 1* disable interrupt for i/o p3 0 enable interrupt for i/o p3 2 r/w 1* disable interrupt for i/o p2 0 enable interrupt for i/o p2 1 r/w 1* disable interrupt for i/o p1 0 enable interrupt for i/o p1 0 r/w 1* disable interrupt for i/o p0 0 enable interrupt for i/o p0 table 12. intstat - interrupt status register (address 06h) bit description legend: * default value. address register bit access value description 06h intstat 7:6 - 00* reserved 5 read only 1 wdint watchdog interrupt flag set [1] [2] 0* wdint watchdog interrupt flag clear 4 read only 1 motor stop interrupt flag set [1] 0* motor stop interrupt flag clear 3:0 read only 1 intp3 flag set [1] 0* intp3 flag clear 1 intp2 flag set [1] 0* intp2 flag clear 1 intp1 flag set [1] 0* intp1 flag clear 1 intp0 flag set [1] 0* intp0 flag clear
pca9629a all information provided in this document is subject to legal disclaimers. ? nxp semiconductors n.v. 2014. all rights re served. product data sheet rev. 2 ? 21 march 2014 14 of 59 nxp semiconductors pca9629a fm+ i 2 c-bus advanced stepper motor controller [2] this bit will be cleared by any rese t events except the watchdog reset event. upon power-up or any reset events, intstat register bits [4:0] are cleared (= 0), thus clearing the interrupt flags. change in logi c level at gpio pins p0 to p3 configured as inputs or motor stopped will ca use generation of interrupt when not masked using msk register. the corresponding flag bit in this re gister is set and latched until reading this register clears all bits. 7.3.7 ip ? input port register this register is read-only. they reflect the in coming logic levels of the port pins p0 to p3, regardless of whether the pin is defined as an input or an output by the i/o configuration register. writes to this register have no effect. 7.3.8 interrupt based motor control interrupt mechanisms from gpios 0 and 1 (intp0 and intp1) can be used to control the motor operation. interrupts from gpios 2 and 3 are not used for motor control. they behave as normal gpio interr upts. in the following sections, the word ?interrupt? refers only to intp0 and intp1. the following acti ons can be performed upon the occurrence of an interrupt: ? stop the motor ? reverse the direction of motion ? re-start the motor with new speed and ramp rate ? move extra steps and then stop the motor or reverse its direction. only interrupts that occurred after the motor was started are acted upon. when an interrupt occurs, it is latched and t he programmed action is performed. the microcontroller has to clear the interrupt before another occurrence of the same interrupt, otherwise the second occurrence will not be acte d upon. the following register, int_mtr_act, is used to program the variou s interrupt based control features of the motor. to enable the interrupt based control of the motor, bit 0 of the int_mtr_act register must be set to 1. table 13. ip - input port register (address 07h) bit description legend: * default value ?x? is determined by the externally applied logic level. address register bit access value description 07h ip 7:4 read only 0h* reserved 3:0 read only xh* reflects incoming logic levels of i/o p0 to p3
pca9629a all information provided in this document is subject to legal disclaimers. ? nxp semiconductors n.v. 2014. all rights re served. product data sheet rev. 2 ? 21 march 2014 15 of 59 nxp semiconductors pca9629a fm+ i 2 c-bus advanced stepper motor controller 7.3.8.1 int_mtr_act ? interrupt motor action co ntrol register if the bit 0 interrupt based control of motor is disabled, then values programmed in the rest of bit [3:7] have no effect on the motor operat ion. the interrupt motor action control has no effect during ramp operation. when an interrupt occurs, if the motor is progra mmed in bit [7:5] to stop on that interrupt, the following sequence of events takes place in the given order: 1. if extra steps feature is enabled for that interrupt (see extrasteps0/extrasteps1 register setti ngs), then extra steps will occur. 2. if ramp down is enabled (see rdcntl register setting), the motor starts ramping down. 3. motor stops. remark: setting ?re-start motor? w ill be ignored when ?stop mo tor on int? is detected. when an interrupt occurs, if the motor is programmed in bit [7:5] to reverse direction on that interrupt, the fo llowing sequence of events takes place: 1. if extra steps feature is enabled for that interrupt (see extrasteps0/extrasteps1 register setting), then extra step s occurs in the current direction of motion. 2. the motor stops for the amount of ti me specified in the loopdly_cw or loopdly_ccw timer register. 3. motor reverses its direction of rotation. table 14. int_mtr_act - interrupt motor action control register (address 08h) bit description legend: * default value. address register bit access value description 08h int_mtr_act 7:5 r/w 111 or 110 re-start motor on int caused by p0 or p1 101 re-start motor on int caused by p1 100 re-start motor on int caused by p0 011 reverse motor on int caused by p0 or p1 010 stop motor on int caused by p0 or p1 001 stop motor on int caused by p1 000* stop motor on int caused by p0 4:3 r/w 11 intp0 auto clears intp1 10 intp1 auto clears intp0 01 intp0 auto clears intp1; intp1 auto clears intp0 00* int auto clear for intp0, intp1 disabled 2:1 r only 00* reserved 0 r/w 1 enable interrupt based control of motor 0* disable interrupt based control of motor
pca9629a all information provided in this document is subject to legal disclaimers. ? nxp semiconductors n.v. 2014. all rights re served. product data sheet rev. 2 ? 21 march 2014 16 of 59 nxp semiconductors pca9629a fm+ i 2 c-bus advanced stepper motor controller when an interrupt occurs, if the motor is programmed in bit [7:5] to re-start motor on that interrupt, the following sequence of events takes place: 1. the current motor speed and operation is changing and re-start new motor speed and operation based on these new motor parameter registers setting. the bit [4:3] setting provides a mechanism to clear the two interrupts (intp0 and intp1) automatically with the occurrence of one interrupt clears the other without the microcontroller. the auto clear feature is disabled by default. this feature is only available fo r interrupts that directly affect the operation of the motor as defined by the bit [7:5]. for example, if intp 0 is used to stop the motor then it can be automatically cleared by its pair intp1. however intp1 should be manually cleared (through i 2 c-bus read the intstat register). if both the interrupts are used to control the motor operation (bit [7:5] = 010, 011, or 110/111) , then all options of the bit [4:3] setting are valid. any interrupt that is not automatically cleared by its pair should be manually cleared through i 2 c-bus read the intstat register. the auto clear mechanism can be used to create various motor movement patterns without being supervised by the microcontroller. for example, consider an application where the direction of motor rotation must be automatically reversed based on signals from two sensors placed apart from each other (sometimes referred to as ?home? positions) in a continuous manner without involving the microcontroller. the following example shows how to program the device for such an operation. example: this example assumes that two position sensors are located spaced apart and a drive mechanism is needed to move an object back and forth between these two sensors. figure 7 shows this application use case. driving the stepper motor causes movement of the object toward one of the s ensors. logic level output of one sensor is connected to input pin p0 and the other to p1. p0 and p1 are configured as inputs .
pca9629a all information provided in this document is subject to legal disclaimers. ? nxp semiconductors n.v. 2014. all rights re served. product data sheet rev. 2 ? 21 march 2014 17 of 59 nxp semiconductors pca9629a fm+ i 2 c-bus advanced stepper motor controller at power-up, intp0 to intp3 flags in intstat[3:0] are clear (= 0). set io_cfg[1:0] = 11, configure both p0 and p1 as inputs. set int_mtr_act[0] = 1, enable interrupt based motor control. set int_mtr_act[7:5] = 011, reverse moto r on interrupt caus ed by p0 or p1. set int_mtr_act[4:3] = 01, intp0 auto cl ears intp1; intp1 auto clears intp0. set intmode[1:0] to select interrupt occurs on eith er falling or rising edge. set msk[1:0] = 00, enable both interrupts for p0 and p1. start motor by writing bit 7 to 1 in mcntl register and after some time, position sensor causes input logic at p0 to toggle. when the input logic level at p0 changes, the interrupt caused by p0 is latched; intp0 flag in intstat is set (= 1). since int_mtr_act[0] = 1 (enable interrupt based motor control) and int_mtr_act[7:5] = 011 (reverse motor on in terrupt caused by p0 or p1), the motor direction is reversed and the intp1 flag is cleared (since intp0 clears intp1). this allows interrupt generation at the end of reverse movement by sensor at p1. fig 7. example of controlling doll head movement between two home positions 002aah546 pca9629a v dd scl sda int reset ad1 ad0 master controller v ss p0 p1 p2 p3 12 v external high current driver generates intp1 sensor 1 electrical stepper motor position b sensor 0 generates intp0 position a out0 out1 out2 out3 5 v 2 k 1.1 k 1.6 k 1.6 k 3.3 v int rst m
pca9629a all information provided in this document is subject to legal disclaimers. ? nxp semiconductors n.v. 2014. all rights re served. product data sheet rev. 2 ? 21 march 2014 18 of 59 nxp semiconductors pca9629a fm+ i 2 c-bus advanced stepper motor controller 7.3.9 extrasteps0, extrasteps1 ? ex tra steps count for intp0, intp1 control register extra steps feature is used to make the motor rotate a specified amount of steps from the point of an interrupt occurr ence. the extrasteps0 register is used for p0 interrupt (intp0) and the extrasteps1 register is used for p1 interrupt (intp1). this register has no effect if the inte rrupt based motor control is disabled (int_mtr_act[0] = 0). the 8-bit value in this register is used to det ermine the number of steps to be overdriven. direction of rotation of motor is maintained. if the count value in this register = 0, the extrasteps feature is disabled. 7.3.10 op_cfg_phs ? output port configuration and phase control register this register is used to configure the out[3: 0] pins output function and level. when bit 4 is set to 0 to select the out[3:0] as general purpose output pins and the lower 4 bits of this register reflect the outgoing logic levels of these pins. when bit 4 is set to 1 to select the out[3:0] as motor drive output pins and the lower 4 bits will reflect the output logic levels on out[3:0] pins when motor is stopped (read only). the bits [7:6] are used to configure the phase of the output waveforms at the motor output pins out0 to out3 to drive the motor coils ( with external high current drivers). one of the following three modes of drive method can be selected using these two bits: ? one-phase drive (wave drive) ? two-phase drive ? half-step drive table 15. extrasteps0, extrasteps1 - extra st eps count for intp0, intp1 register (address 09h, 0ah) bit description legend: * default value. address register bit access value description 09h extrasteps0 7:0 r/w 00h* count value for extrasteps (steps) for intp0 0ah extrasteps1 7:0 r/w 00h* count value for extrasteps (steps) for intp1
pca9629a all information provided in this document is subject to legal disclaimers. ? nxp semiconductors n.v. 2014. all rights re served. product data sheet rev. 2 ? 21 march 2014 19 of 59 nxp semiconductors pca9629a fm+ i 2 c-bus advanced stepper motor controller remark: the phase of the output waveforms can be changed at any time by writing to bits [7:6] of this register. 7.3.11 op_stat_to the bit [1:0] determines the condition of motor output pins when motor is stopped on clockwise and the bit [3:2] determines the cond ition of motor output pins when motor is stopped on counter-clockwise. one of logic 0, lo gic 1 or hold (last state) selects for motor output state. the bit [7:5] is used to configure the motor st op time-out timer. the time-out timer is enabled and starts to count down when this value is non-zero and motor is stopped, the motor output pins will drive all logic 0s when coun ting down to zero. th is time-out timer is counting down when motor is stopped and reload the value again when motor is started. when motor is in stop condition (mcntl[7] = 0) , the out[3:0] pins are driving high if output pins are set to logic 1 (on) and the time-out timer is disabled in op_stat_to register. table 16. op_cfg_phs - output port conf iguration and phase control register (address 0bh) bit description legend: * default value. address register bit access value description 0bh op_cfg_phs 7:6 r/w 11 or 10 half-step drive outputs 01 two-phase drive outputs 00* one-phase drive outputs 5 - 0* reserved 4 r/w 1* out[3:0] will be c onfigured as motor drive outputs 0 out[3:0] will be configured as general purpose outputs (gpo) 3:0 r/w 0000* when bit 4 is set to 0, these 4 bits reflect output logic levels on out[3:0] pins for gpo function. when bit 4 is set to 1, these 4 bits reflect the last output logic levels on out[3:0] pins when motor is stopped (read only). fig 8. simplified schematic for out[3:0] control 002aah529 op_cfg_phs - output port configuration and phase control register motor output phase sequence generator out0 to out3 read/write access from i 2 c-bus bit 4 bit[3:0] read motor stopped state 0 1
pca9629a all information provided in this document is subject to legal disclaimers. ? nxp semiconductors n.v. 2014. all rights re served. product data sheet rev. 2 ? 21 march 2014 20 of 59 nxp semiconductors pca9629a fm+ i 2 c-bus advanced stepper motor controller [1] no need to enable the motor stop time-out timer. remark: both output time-out control and output state can be changed at any time by writing to this register. 7.3.12 rucntl ? ramp-up control register [1] no effect if bit 5 is set to 0, or when the motor is running on the final (top) speed. the multiplication factor has a decimal range from 1 to 8192 as shown in ta b l e 1 9 . table 17. op_stat_to - output state and time-out control register (address 0ch) bit description legend: * default value. address register bit access value description 0ch op_stat_to 7:5 r/w motor stop time-out timer. the output state will drive all logic 0 when motor is stopped and this timer counts down to zero. 111 1020 ms 110 508 ms 101 252 ms 100 124 ms 011 60 ms 010 28 ms 001 12 ms 000* disable time-out timer 4 r/w 0* reserved 3:2 r/w 11 or 10 output pins = logic 1 (on) after ccw stop 01 output pins = hold last state after ccw stop 00* output pins = logic 0 (off) after ccw stop [1] 1:0 r/w 11 or 10 output pins = logic 1 (on) after cw stop 01 output pins = hold last state after cw stop 00* output pins = logic 0 (off) after cw stop [1] table 18. rucntl - ramp-up control regi ster (address 0dh) bit description legend: * default value. address register bit access value description 0dh rucntl 7:6 read only 00* reserved 5 r/w 1 enable ramp-up during start 0* disable ramp-up during start 4 r/w 1 re-enable ramp-up to change ramp-up rate [1] 0* self clear after new rate of ramp-up start running 3:0 r/w 0000* ramp-up step multiplication factor
pca9629a all information provided in this document is subject to legal disclaimers. ? nxp semiconductors n.v. 2014. all rights re served. product data sheet rev. 2 ? 21 march 2014 21 of 59 nxp semiconductors pca9629a fm+ i 2 c-bus advanced stepper motor controller the rucntl[5] enables/disables the speed ramp-up during starting of the motor. the rucntl[4] re-enables the new speed ramp-up to replace the current ramp-up rate while the current ramp-up is running. user ca n write bit [5:4] = 11 with new ramp-up step multiplication factor in bit [3:0] to change new ramp-up rate and bit 4 is self-cleared to 0. re-enabling the ramp-up will c hange the ramp-up rate imme diately during the ramp-up operation only. user can set re-enable ramp-up without re-start motor operation to change the ramp-up rate curve on-the-fly. the prescaler range setting (eight ranges in cwpwh/ccwpwh registers) must be in the same range during re-enable ramp-up operation. see figure 10 . the rucntl[3:0] defines the acceleration rate of the ramp-up control. if the value is small, the pwm width decrement (accelerating) is slower. the pulse width decrement step is ?smallest_pulse_step ? rucntl[3:0] factor?. the smallest_pulse_step is defined by pr escaler value of cwpwh [15:13] and ccwpwh[15:13]. each presca ler setting?s smallest_ pulse_step is given in table 27 and ta b l e 2 9 (the minimum value of the range). the ramp up control will start in speed of maximu m_pulse_step, which is the maximum value of the range given in table 27 and table 29 . the ramp-up is completed (final speed) when the pulse width gets the width that is set by cwpwl/cwpwh or ccwpwl/ccwpwh registers. during ramp-up, the step pulse width is automatically decremen ted (from the maximum value for step pulse width in the chosen ra nge) until the value in cwpw or the ccwpw register is reached, depending on the direction of rotation. see figure 9 table 19. multiplication factor value for ramp-up, ra mp-down control register value [3:0] decimal value (d) ramp step multiplication factor (2 d ) 0000 0 1 0001 1 2 0010 2 4 0011 3 8 0100 4 16 0101 5 32 0110 6 64 0111 7 128 1000 8 256 1001 9 512 1010 10 1024 1011 11 2048 1100 12 4096 1101 13 8192 1110, 1111 14, 15 reserved and do not use
pca9629a all information provided in this document is subject to legal disclaimers. ? nxp semiconductors n.v. 2014. all rights re served. product data sheet rev. 2 ? 21 march 2014 22 of 59 nxp semiconductors pca9629a fm+ i 2 c-bus advanced stepper motor controller 7.3.13 rdcntl ? ramp-down control register [1] no effect if bit 5 is set to 0, or when the motor is running on the final (top) speed. the multiplication factor has a decimal range from 1 to 8192 as shown in ta b l e 1 9 . the rdcntl[5] enables/disables the speed ramp-down during stopping of the motor. the rdcntl[4] re-enables the new speed ramp-down to replace the current ramp-down rate while the current ramp down is running. user can write bit [5:4] = 11 with new ramp-down step multiplication factor in bit[3:0 ] to change new ramp-down rate and bit 4 is self-cleared to 0. re-enab ling the ramp-down will change the ramp-dow n rate immediately during the ramp down operation only. user can set re-enable ramp down without re-start motor operation to change the ramp-down rate curve on-the-fly. the prescaler range setting (eight ranges in cw pwh/ccwpwh registers) must be in the same range during re-enable ramp down operation. see figure 10 . the rdcntl[3:0] defines the decelerating rate of the ramp down control. if the value is small, the pwm width increment (decelerating) is slower. the pulse width increment step is ?smallest_pulse_step ? rdcntl[3:0] factor?. the smallest_pulse_step is defined by pr escaler value of cwpwh[15:13] and ccwpwh[15:13]. each presca ler setting?s smallest_ pulse_step is given in table 27 and ta b l e 2 9 (the minimum value of the range). the ramp-down control will end in speed of maximu m_pulse_step, which is the maximum value of the range given in table 27 and table 29 . during ramp-down, the step pulse width is automatically incremented from the current value in cwpw or the ccwpw, depending on the direction of rotation, until it reaches the maximum value for step pulse width in the chosen range. see figure 9 . table 20. rdcntl - ramp-down control regi ster (address 0eh) bit description legend: * default value. address register bit access value description 0eh rdcntl 7:6 read only 00* reserved 5 r/w 1 enable ramp-down to stop 0* disable ramp-down to stop 4 r/w 1 re-enable ramp-down to change ramp-down rate [1] 0* self clear after new rate of ramp-down start running 3:0 r/w 0000* ramp-down step multiplication factor
xxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxx x x x xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxx xx xx xxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxx xxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxx x x xxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxx xxx pca9629a all information provided in this document is subject to legal disclaimers. ? nxp semiconductors n.v. 2014. all rights re served. product data sheet rev. 2 ? 21 march 2014 23 of 59 nxp semiconductors pca9629a fm+ i 2 c-bus advanced stepper motor controller example shown is one-phase drive for clockwise rotation. (1) the ramp start or ramp end speed is defined as the maximum value of the range given in table 27 and table 29 based on prescaler bits [15:13] in cwpwh/ccwpwh registers. for example, the ramp start or ramp end speed is 98.304 ms if the cwpwh/ccwpwh[15:13] = 010. (2) the decrease/increase step pulse width is defin ed as the minimum value of the range given in table 27 and table 29 based on prescaler bit s [15:13] in cwpwh/ccwpwh registers times the ramp step multiplication factor bits [3:0] in rucntl/rdcntl registers. for example, the decreas e/increase step pulse width is 192 ? s(12 ? s ? 16) if the cwpwh/ccwpwh[15:13] = 010 (minimum value 12 ? s) and rucntl/rdcntl[3:0] = 0100 (multiplication factor 16). (3) the ramp-up final speed is defined as t he minimum value of the range given in table 27 and ta b l e 2 9 based on prescaler bit s [15:13] times the step pulse width value bits [12:0] plus 1 in cwpwh/l and ccwpwh/l regist ers. for example, the ramp-up final speed is 24 ? s (12 ? s ? 2) if the cwpwh/ccwpwh[15:13] = 010 (minimum value 12 ? s) and the cwpwh/l or ccwpwh/l = 0x0001 (1 + 1). fig 9. pca9629a operation model for ramp-up (acceleration) and ramp-down (deceleration) 002aah557 speed time duration to keep rotation/step in final speed total steps are defined by cwscountx/ccwscountx and pma registers ramp-up final (top) speed (3) ramp-down (no microcontroller interactions required) ramp start speed (1) ramp end speed (1) start motor if mcntl[7] = 1 stop motor when operation is completed and mcntl[7] bit is self-clear increase step pulse width (2) (deceleration rate) decrease step pulse width (2) (acceleration rate) 98.304 ms 97.536 ms 98.112 ms 97.92 ms 97.728 ms out0 out1 out2 out3 ramp-up operation 98.304 ms 97.536 ms 98.112 ms 97.92 ms 97.728 ms final speed ramp-down operation 24 s 24 s
pca9629a all information provided in this document is subject to legal disclaimers. ? nxp semiconductors n.v. 2014. all rights re served. product data sheet rev. 2 ? 21 march 2014 24 of 59 nxp semiconductors pca9629a fm+ i 2 c-bus advanced stepper motor controller during ramp-up and ramp-down phase of operat ion, the interrupt based controls do not affect the motor run. a stop request from the microcontroller (writing mcntl[7] = 0 or mcntl[5] = 1) is the only event that affe cts the motor operation during ramp-up and ramp-down. during ramp-up, the micro can issue a stop request either normal stop (mcntl[7] = 0) or emergency stop (mcntl[5] = 1). the following sequence of events takes place in the given order: 1. if emergency stop is enabled (mcntl[5] = 1), the motor stops immediately (even if ramp-down is enabled) - priority 1. 2. if normal stop is enabled (mcntl[7] = 0) and ramp-down is enabled, then the motor starts to ramp down to stop - priority 2. 3. if normal stop is enabled (mcntl[7] = 0) and ramp-down is disabled, then motor stops immediately - priority 3. during ramp-down, the micro can issue a st op request either normal stop (mcntl[7] = 0) or emergency stop (mcntl[5] = 1). the following sequence of events takes place in the given order: 1. if emergency stop is enabled (mcntl[5] = 1), the motor stops immediately (it does not finish ramping down) - priority 1. 2. if normal stop is enabled (mcntl[7] = 0) and ramp-down is enabled, then the motor continues to ramp down to a stop - priority 2. example shown for how to program re-enable ramp-up and ramp-down during ramp operation. (1) cwpwh = 30h, cwpwl = 00h (ramp start/stop speed is 49.152 ms and final speed is 24.582 ms. (2) cwscounth = 06h, cwscountl = 00h (duration to keep rotation 1536 steps after final speed). (3) rucntl = 23h (enable ramp-up and set acceleration rate 6 ? s ? 8=48 ? s; this is the first ramp speed). (4) rdcntl = 23h (enable ramp-down and set deceleration rate 6 ? s ? 8=48 ? s; this is the third ramp speed). (5) pma = 01h (perform motor action specified in bit[1:0] of mcntl register once). (6) mcntl = 80h (start motor with rotate clockwise). (7) rucntl = 32h (during ramp-up, re-enable ramp-up and change the multiplication factor value to the new ramp acceleration rate 6 ? s ? 4=24 ? s; this is the second ramp speed). (8) rdcntl = 32h (during ramp-down, re-enable ramp-down and change the multiplication factor value to the new ramp deceleration rate 6 ? s ? 4=24 ? s; this is the fourth ramp speed). fig 10. pca9629a operation model for re-enable ramp-up and ramp-down decrease step pulse width by 48 s (first ramp speed) speed time ramp start speed (49.152 ms) ramp end speed (49.152 ms) decrease step pulse width by 24 s (second ramp speed) (re-enable ramp-up bit) keep rotating 1536 steps in final speed (re-enable ramp-up or ramp-down has no effect during the final speed) (re-enable ramp-down bit) increase step pulse width by 48 s (third ramp speed) increase step pulse width by 24 s(fourth ramp speed) ramp up ramp down final speed (24.582 ms) 002aah534
pca9629a all information provided in this document is subject to legal disclaimers. ? nxp semiconductors n.v. 2014. all rights re served. product data sheet rev. 2 ? 21 march 2014 25 of 59 nxp semiconductors pca9629a fm+ i 2 c-bus advanced stepper motor controller in the duration between end of ramp-up and be ginning of ramp-down, the interrupt based controls (if enabled) can affect the operation of the motor. in this region, section 7.3.8 gives the priority of events when both interrupt-based control and ramp control are enabled together. 7.3.14 pma ? perform multiple of actions control register this register determines if the motor operation specified in bits [1:0] of mcntl register is executed once, multiple times (2 ~ 255) or continuously. if continuous operation (pma = 00h) is set, the motor can be stopped either by issuing a stop request or if an interrupt happens and the motor is programmed to stop on that interrupt. if multiple times operation is set from 1 to 255 in bit [7:0], th e motor stops automatically after finishing the current multiple times operation. the number of action counter is always increased by 1 whenever the motor rotation direction is changed during the mcntl[1:0] = 10 or 11. 7.3.15 loopdly_cw ? loop delay timer for cw to ccw control register this feature is used to make the motor wait for a certain amou nt of time before reversing its direction from clockwise to counter-clockwise rotation. there are two situations in which the motor must reverse its direction of rotation: ? the user requests both clockwise and counter-clockwise rotation (also known as auto reversal mode). ? on an interrupt (also known as interrupt reversal mode). this register holds the wait time value in resolution of 4 ms. 00h = 0 second wait time, 01h = 4 ms wait time, and ffh = 1.02 seconds wait time. remark: loopdly_cw timer has an accuracy of ? 3%. table 21. pma - perform multiple of actions co ntrol register (address 0fh) bit description legend: * default value. address register bit access value description 0fh pma 7:0 r/w 00h perform motor action specified in bits [1:0] of mcntl register continuously 01h* perform motor action specified in bits [1:0] of mcntl register once 02h to ffh perform motor action number of times from 2 (02h) to 255 (ffh) specified in bits [1:0] of mcntl register table 22. loopdly_cw - loop delay timer for cw to ccw control register (address 10h) bit description legend: * default value. address register bit access value description 10h loopdly_cw 7:0 r/w 00h* loop delay counter for reversing from clockwise to counter-clockwise rotation
pca9629a all information provided in this document is subject to legal disclaimers. ? nxp semiconductors n.v. 2014. all rights re served. product data sheet rev. 2 ? 21 march 2014 26 of 59 nxp semiconductors pca9629a fm+ i 2 c-bus advanced stepper motor controller 7.3.16 loopdly_ccw ? loop delay timer for ccw to cw control register this feature is used to make the motor wait for a certain amou nt of time before reversing its direction from counter-clo ckwise to clockwise rotation. there are two situations in which the motor must reverse its direction of rotation: ? the user requests both clockwise and counter-clockwise rotation (also known as auto reversal mode). ? on an interrupt (also known as interrupt reversal mode). this register holds the wait time value in resolution of 4 ms. 00h = 0 second wait time, 01h = 4 ms wait time, and ffh = 1.02 seconds wait time. remark: loopdly_ccw timer has an accuracy of ? 3%. 7.3.17 cwscountl, cwscounth ? number of clockwise steps register this register determines the number of steps the motor should turn in clockwise direction. 7.3.18 ccwscountl, ccwscounth ? number of counter-clockwise steps register this register determines the number of steps the motor should turn in counter-clockwise direction. table 23. loopdly_ccw - loop delay timer for ccw to cw control register (address 11h) bit description legend: * default value. address register bit access value description 11h loopdly_ccw 7:0 r/w 00h* loop delay counter for reversing from counter-clockwise to clockwise rotation table 24. cwscountl, cwscounth - number of clockwi se steps count register (address 12h, 13h) bit description legend: * default value. address register bit access value description 12h cwscountl 7:0 r/w 00h* number of clockwise steps, low byte 13h cwscounth 7:0 r/w 00h* number of clockwise steps, high byte table 25. ccwscountl, ccwscounth - number of counter-clockwise steps count register (address 14h, 15h) bit description legend: * default value. address register bit access value description 14h ccwscountl 7:0 r/w 00h* number of counter-clockwise steps, low byte 15h ccwscounth 7:0 r/w 00h* number of counter-clockwise steps, high byte
pca9629a all information provided in this document is subject to legal disclaimers. ? nxp semiconductors n.v. 2014. all rights re served. product data sheet rev. 2 ? 21 march 2014 27 of 59 nxp semiconductors pca9629a fm+ i 2 c-bus advanced stepper motor controller 7.3.19 cwpwl, cwpwh ? clockwise step pulse width register this register determines the step pulse width used for the phase sequence output waveforms during clockwise (cw) rotation. this register sets the pulse width value between 3 ? s and 3145 ms ( ? 3%). the upper three bits of the register are the prescaler that determines the dynamic range for the step pulse width. table 27 shows the range for each setting of the prescaler. remark: the values given in table 27 are based on nominal 1 mhz internal clock. this method gives the user access to the entire range with the smallest pulse width (fastest speed) of 3 ? s at the lower end, and the largest pulse width (slowest speed) of 3145 ms at the higher end. the prescaler value defines the range of the ramp control. the ramp-up starts from its maximum pulse width and ramp-down ends at same maximum pulse width. the top speed of the ramp control is defined by both prescaler and step_pulse_width values. final (top) speed = (minimum pulse width in the range defined by prescaler[15:13]) ? (step_pulse_width[12:0] + 1). table 26. cwpwl, cwpwh - clockwise st ep pulse width control register (address 16h, 17h) bit description legend: * default value. address register bit access value description 16h cwpwl 7:0 r/w 00h* step pulse width, low byte 17h cwpwh 7:0 r/w 00h* step pulse width, high byte fig 11. step pulse width for clockwise rotation table 27. prescaler range settings prescaler [p2:p0] decimal value (d) 2 d range 000 0 1 3 ? s to 24.576 ms 001 1 2 6 ? s to 49.152 ms 010 2 4 12 ? s to 98.304 ms 011 3 8 24 ? s to 196.608 ms 100 4 16 48 ? s to 393.216 ms 101 5 32 96 ? s to 786.432 ms 110 6 64 192 ? s to 1572.864 ms 111 7 128 384 ? s to 3145.728 ms 002aae839 p2 p1 p0 prescaler 13 bits (2 13 = 8192 steps) step pulse width 12 0 15 14 13
pca9629a all information provided in this document is subject to legal disclaimers. ? nxp semiconductors n.v. 2014. all rights re served. product data sheet rev. 2 ? 21 march 2014 28 of 59 nxp semiconductors pca9629a fm+ i 2 c-bus advanced stepper motor controller 7.3.20 ccwpwl, ccwpwh ? counter-clockwise step pulse width register this register determines the step pulse width used for the phase sequence output waveforms during counter-clockwise (ccw) rotation. the 16-bit value sets the pulse width between 3 ? s and 3145 ms ( ? 3%). the upper three bits of the register are the prescaler that determines the dynamic range for the step pulse width. table 29 shows the range for each setting of the prescaler. remark: the values given in table 29 are based on nominal 1 mhz internal clock. this method gives the user access to the entire range with the smallest pulse width (fastest speed) of 3 ? s at the lower end, and the largest pulse width (slowest speed) of 3145 ms at the higher end. the prescaler value defines the range of the ramp control. the ramp-up is started from its maximum pulse width and ramp-down ends at same maximum pulse width. the top speed of the ramp control is defined by both prescaler and step_pulse_width values. final (top) speed = (minimum pulse width in the range defined by prescaler[15:13]) ? (step_pulse_width[12:0] + 1). table 28. ccwpwl, ccwpwh - co unter-clockwise step pul se width control register (address 18h, 19h) bit description legend: * default value. address register bit access value description 18h ccwpwl 7:0 r/w 00h* step pulse width, low byte 19h ccwpwh 7:0 r/w 00h* step pulse width, high byte fig 12. step pulse width for counter-clockwise rotation table 29. prescaler range settings prescaler [p2:p0] decimal value (d) 2 d range 000 0 1 3 ? s to 24.576 ms 001 1 2 6 ? s to 49.152 ms 010 2 4 12 ? s to 98.304 ms 011 3 8 24 ? s to 196.608 ms 100 4 16 48 ? s to 393.216 ms 101 5 32 96 ? s to 786.432 ms 110 6 64 192 ? s to 1572.864 ms 111 7 128 384 ? s to 3145.728 ms 002aae839 p2 p1 p0 prescaler 13 bits (2 13 = 8192 steps) step pulse width 12 0 15 14 13
pca9629a all information provided in this document is subject to legal disclaimers. ? nxp semiconductors n.v. 2014. all rights re served. product data sheet rev. 2 ? 21 march 2014 29 of 59 nxp semiconductors pca9629a fm+ i 2 c-bus advanced stepper motor controller 7.3.21 mcntl ? motor control register this register acts like the master control panel for driving the motor. it determines the type of motor operation and controls the starting/s topping or re-start new speed of the motor. the registers from address 08h (int_mtr_act) to 19h (ccwpwh) are referred to as the motor parameter registers. the user must first program the motor parameter registers that are required for the current run of the motor. after that, this register should be programmed with the type of operation required in bits [1:0]. the motor starts when bit 7 of this register is set. while the bit 7 of this register is still 1 (motor is running), the user also can re-program the motor parameter registers that are required to change the motor speed for the next run of the motor. the motor can re-start with new speed and operation without stopping motor when both bits [7:6] of this regi ster are set to 1. the type of operation control in bit [1:0] is not allowed to change when re-starting motor. 7.3.21.1 mcntl[7]: start/stop motor this bit indicates the state of the motor. a ?1? indicates that the motor is running and ?0? indicates that the motor is in the stopped state. to start the motor, write ?1? to this bit. once the motor is starte d. changing bits [1:0] of the mcntl register do not affect motor operatio n. only three bits th at can affect motor operation in the mcntl register while the motor is running are the start/stop bit, re-start bit, and emergency stop bit. also, any start command (writing ?1? to this bit only when it is already set), before the completion of the current operation are ignored. table 30. mcntl - motor control regist er (address 1ah) bit description legend: * default value. address register bit access value description 1ah mcntl 7 r/w 1 start motor 0* stop motor 6 r/w 1 re-start motor for new speed and operation 0* self clear after new speed starts running 5 r/w 1 emergency stop motor 0* self clear after motor stop and bit 7 also clears to 0 4 w only 1 enable start (bit 7) ignore caused by p0 state 0* disable start (bit 7) ignore caused by p0 state 3 w only p0 polarity setting for start (bit 7) ignore 1 set p0 input state is high to ignore start bit 7 0* set p0 input state is low to ignore start bit 7 2 r only 0* reserved 1:0 r/w 11 rotate counter-clockwise first, then clockwise 10 rotate clockwise firs t, then counter-clockwise 01 rotate counter-clockwise 00* rotate clockwise
pca9629a all information provided in this document is subject to legal disclaimers. ? nxp semiconductors n.v. 2014. all rights re served. product data sheet rev. 2 ? 21 march 2014 30 of 59 nxp semiconductors pca9629a fm+ i 2 c-bus advanced stepper motor controller when the current operation is completed, th e motor stops and this bit is cleared. the completion of motor operation can be checked by reading this bit or detecting motor stop interrupt if motor stop interrupt is enabled in msk register (bit 4 = 0) . after the motor has stopped, the motor parameter registers can be updated and the motor can be started again. the microcontroller can stop the motor at any time by writing ?0? to this bit (this is referred to as a normal stop request). once the motor stops, this bi t is cleared an d it will generate interrupt if motor stop interrupt is enabled. stop request issued when the motor is already in the stopped state is ignored. 7.3.21.2 mcntl[6]: re-start motor the ?re-start motor? feature is designed to change the current motor speed and operation without stopping motor. so the re-start motor is changing current motor run based on the new motor parameter registers setting. user can re-program new speed and operation while the current motor operation is still running (bit 7 = 1), then write ?1? to both bits [7:6] to re-start new speed/operation and this bit is self cleared after new speed and operation start running. the new speed of step pulse width will start on out(x + 1) output pin right after the current phase of output waveform fi nished on outx output pin. once the motor is re-started by writing both bits [7:6] to ?1?, the motor parameter registers can be re-program again for another new speed and operation. re-start motor operation is allo wed only if the total number of steps is not completed (in cwscount/ccwscount, pm a and extrasteps0/extrast eps1 registers), so re-start motor does not change the step counter (cwscount/ccwscount) value and will continuously count the remaining steps until all st eps are completed or motor is stopped. the following registers can be re-p rogrammed for re-start motor operation: ? int_mtr_act ? loopdly_cw, loopdly_ccw ? rucntl, rdcntl ? cwpw[12:0], ccwpw[12:0] the following rules should be observed while programming this bit to re-start motor run: ? during the interrupt motor re-start operation, setting this re-start bit has no effect. ? the prescaler range setting (eight ranges in cwpwh/ccwpwh registers) must be in the same range during re-start motor operation. ? set re-start motor bit to ?1? while the curr ent motor is running (b it 7 = 1) in the final (top) or target speed (s 0 ), the re-start motor action w ill take place immediately based on the new motor parameter registers setting. if both ramp-up/ramp-down are disabled, it will change to new speed of s 1 immediately as shown in figure 13 . if both ramp-up/ramp-down are enabled, it will go to new speed of s 1 with either ramp up (s 0 s 1 ) as shown in figure 14 . ? set re-start motor bit to ?1? while the curr ent motor is running (b it 7 = 1) in the ramp operation, the re-start motor action will wait for the ramp-u p or ramp-down to complete, then re-start the new motor operation based on the new motor parameter registers setting as shown in figure 15 . ? user can set both re-start motor and re-enable ramp operations at the same time. motor will change the ramp rate first if motor is runni ng in the ramp operation.
pca9629a all information provided in this document is subject to legal disclaimers. ? nxp semiconductors n.v. 2014. all rights re served. product data sheet rev. 2 ? 21 march 2014 31 of 59 nxp semiconductors pca9629a fm+ i 2 c-bus advanced stepper motor controller ? re-start motor request issued when the motor is already in the stopped state is ignored. ? re-start motor request when the current motor is stopped and waiting for the loop delay time in auto-reversal mode is ignored. fig 13. re-start motor with ramp-u p/ramp-down disable while current motor running in the final speed 002aah543 speed motor running at s 0 motor running at s 1 first operation (set pulse width of speed s 1 ) start motor (set bit 7 = 1) re-start motor (set bits [7:6] = 11) terminate the current operation and re-start next operation second operation motor stop time fig 14. re-start motor with ramp-u p/ramp-down enable while current motor running in the final speed 002aah544 speed first operation motor running at s 0 24.58 ms start motor (bit 7 = 1) with speed s 0 re-start motor (set bits [7:6] = 11) with either ramp up or ramp down from speed s 0 second operation ramp down to end speed 49.152 ms time 49.15 ms 36.87 ms 24.58 ms 12.29 ms (set pulse width of speed s 1 and enable ramp-up/ramp-down) (128 steps) if s 0 > s 1 , ramp down to speed s 1 if s 0 < s 1 , ramp up to speed s 1 ramp up or down to final speed s 1 start ramp down to maximum pulse width motor running at s 1 speed (12.294 ms) third operation (total of steps) motor running at s 1 speed (36.87 ms) (motor stop) fourth operation motor ramp down to end speed (maximum pulse width)
pca9629a all information provided in this document is subject to legal disclaimers. ? nxp semiconductors n.v. 2014. all rights re served. product data sheet rev. 2 ? 21 march 2014 32 of 59 nxp semiconductors pca9629a fm+ i 2 c-bus advanced stepper motor controller 7.3.21.3 mcntl[5]: emergency stop the ?emergency stop? feature is used to st op the motor immediatel y when this bit is set to 1. emergency stop feature has a higher priority over ramp operation. so even if ramp operation is enabled, if the micro issues an emergency stop request, the motor stops immediately and does not ramp up or ramp down to stop. the micro should decide how the part should handle its stop request ? either normal stop by setting bit 7 to 0, or emergency stop by setting this bit 5 to 1. this bit self clears after write 1 and bit 7 also clears to 0 after motor stop, it will generate an interrupt if mo tor stop interrupt is enabled. emergency stop request issued when the motor is already in the stopped state is ignored. 7.3.21.4 mcntl[4]: enable/disable start (bit 7) ignore caused by p0 state the ?start (bit 7) ignore caused by p0 state? feature is designed to control and monitor motor home-position based on p0 input state. in normal operation, this bit is set to 0 to disable this function. when the motor is in stop condition (start bit 7 = 0), the microcon troller can set bit 7 to 1 and bit[4:3] = 10 to control motor operation in the following order: 1. if the p0 input state is low, then start bit 7 is ignored (motor is non-operational and in right position). 2. if p0 input state is high, then motor is st arted until the p0 input state is detected as low (motor is back to right position). when the motor is in stop condition (start bit 7 = 0), the microcon troller can set bit 7 to 1 and bit[4:3] = 11 to control motor operation in the following order: 1. if the p0 input state is high, then start bit 7 is ignored (motor is non-operational and in right position). fig 15. re-start motor with ramp-u p/ramp-down enable while current motor running in the ramp-up 002aah545 speed first operation start motor (bit 7 = 1) with ramp up and final speed is s 0 24.58 ms re-start motor (set bits [7:6] = 11) with either ramp up or ramp down from speed s 0 second operation ramp down to end speed 49.152 ms time 49.15 ms 36.87 ms 24.58 ms 12.29 ms (re-start motor will wait for the ramp up to complete) (128 steps) if s 0 > s 1 , ramp down to speed s 1 if s 0 < s 1 , ramp up to speed s 1 ramp up or down to final speed s 1 start ramp down to maximum pulse width motor running at s 1 speed (12.294 ms) third operation (total of steps) motor running at s 1 speed (36.87 ms) (motor stop) fourth operation motor ramp down to end speed (maximum pulse width)
pca9629a all information provided in this document is subject to legal disclaimers. ? nxp semiconductors n.v. 2014. all rights re served. product data sheet rev. 2 ? 21 march 2014 33 of 59 nxp semiconductors pca9629a fm+ i 2 c-bus advanced stepper motor controller 2. if p0 input state is low, then motor is started until the p0 input state is detected as high (motor is back to right position). user can periodically send this command to keep motor in home- position without polling the p0 input state. 7.3.21.5 mcntl[3]: p0 polarity se tting for start (bit 7) ignore this bit is used to set p0 input state either low or high for detection when bit 4 is set to 1 to enable the ?start (bit 7) ignore caused by p0 state? feature and p0 is configured as input in io_cfg register. the input filter for p0 input state change detection can be enabled to suppress a spike or noise in the range of 500 ? s to 10 ms as shown in the bit[6:4] in intmode register. the input filter for p0 will be disabled if bit[ 6:4] is set to ?00? in intmode register. 7.3.21.6 mcntl[1:0]: clockwise (c w) / counter-clockwise (ccw) these two bits are used to program the direction of the motor for current operation. the number of clockwise or counter-clockwise ro tation steps are defined in cwscount or ccwscount registers and the number of repeat operations (from 1 to 255 or continuously) is defined in the pma register. number of steps should be non zero in the direction of operation (cw or ccw). in au to/interrupt based reversal modes (cw and ccw), the number of steps in both directions should be non zero. if this condition is not satisfied, the motor does not start. options 10 and 11 are called auto reversal modes (to differentiate it from interrupt based reversal). in these modes, the motor starts rotating in one direction and after completing the required steps reverses the dire ction of rotation. if continuous mode of operation is programmed in pma register (bits [7:0] = 00h) with auto reversal, then the motor keeps repeating the op eration continuously until the micro issues a stop request or if an interrupt happens an d the motor is programmed to stop on that interrupt. 7.3.22 subadr1 to subadr3 ? i 2 c-bus subaddress 1 to 3 subaddresses are programmable through the i 2 c-bus. default power-up values are e2h, e4h, e8h, and the device(s) will not acknowledge these addresses right after power-up (the corresponding bits [3:1] in mode register is equal to 0). once subaddresses have been programmed to their right values, bits [3:1] (mode register) must be set to logic 1 in order to have the device acknowledging these addresses. only the seven msbs representing the i 2 c-bus subaddress are valid. the table 31. subadr1 to subadr3 - i 2 c-bus subaddress registers 1 to 3 (addresses 1bh, 1ch 1dh) bit description legend: * default value. address register bit symbol access value description 1bh subadr1 7:1 a1[7:1] r/w 1110 001* i 2 c-bus subaddress 1 0 a1[0] r only 0* reserved 1ch subadr2 7:1 a2[7:1] r/w 1110 010* i 2 c-bus subaddress 2 0 a2[0] r only 0* reserved 1dh subadr3 7:1 a3[7:1] r/w 1110 100* i 2 c-bus subaddress 3 0 a3[0] r only 0* reserved
pca9629a all information provided in this document is subject to legal disclaimers. ? nxp semiconductors n.v. 2014. all rights re served. product data sheet rev. 2 ? 21 march 2014 34 of 59 nxp semiconductors pca9629a fm+ i 2 c-bus advanced stepper motor controller lsb in subadrx register is a read-only bit (0). when subaddress control bits [3:1] in mode register is set to logic 1, the corresponding i 2 c-bus subaddress can be used during either an i 2 c-bus read or write sequence. 7.3.23 allcalladr ? all call i 2 c-bus address the all call i 2 c-bus address allows all the pca9629as on the bus to be programmed at the same time (bit 0 in register mode must be equal to 1 (power-up default state)). this address is programmable through the i 2 c-bus and can be used during either an i 2 c-bus read or write sequence. only the seven msbs representing the all call i 2 c-bus address are valid. the lsb in allcalladr register is a read-only bit (0). if bit 0 in mode register = 0, the device does not acknowledge the address programmed in register allcalladr. 7.3.24 stepcount[0:3] ? step counter registers this 32-bit counter is designed to continuously count total number of step pulses that drive the motor coils fr om output ports out0 to out3. this 32-bit step counter will be cleared after they are read, overflow, power-on reset, or hardware/software reset. table 32. allcalladr - all call i 2 c-bus address register (address 1eh) bit description legend: * default value. address register bit symbol access value description 1eh allcalladr 7:1 ac[7:1] r/w 1110 000* allcall i 2 c-bus address register 0 ac[0] r only 0* reserved table 33. stepcount0, stepc ount1, stepcount2, stepc ount3 - step counter registers (addresses 1fh, 20h, 21h, 22h) bit description legend: * default value. address register bit access value description 1fh stepcount0 7:0 r only 00h* step counter byte [7:0] (clear after read) 20h stepcount1 7:0 r only 00h* step counter byte [15:8] (clear after read) 21h stepcount2 7:0 r only 00h* step counte r byte [23:16] (clear after read) 22h stepcount3 7:0 r only 00h* step counte r byte [31:24] (clear after read)
pca9629a all information provided in this document is subject to legal disclaimers. ? nxp semiconductors n.v. 2014. all rights re served. product data sheet rev. 2 ? 21 march 2014 35 of 59 nxp semiconductors pca9629a fm+ i 2 c-bus advanced stepper motor controller 7.4 motor coil excitation initially, after a power-up of the device, when the motor is started for the first time, the first coil that is energized is out0 (if the motor is turning in the clockwis e direction), or out3 (if the motor is turning in the counter-clockwise direction). this very first step (after a power-up) is not counted towards the number steps the motor is required to move (it is the reference step). all subsequent steps are all co unted. this applies only for the very first time the motor is st arted after the device is powered up. for all subsequent starting of the motor, the first coil that is energized is the same coil where it had stopped. for example, consider the motor running in cl ockwise direction in the one-phase drive mode. if the last coil that was energized before the motor stopped was out2, then when the motor is started again out2 is energized first and after the pulse width time elapses the next coil in sequence, that is, out3 is energized. 7.5 power-on reset when power is applied to v dd , an internal power-on reset (por) holds the pca9629a in a reset condition until v dd has reached v por . at that point, the rese t condition is released and the pca9629a registers and state machin e initialize to their default states. the power-on reset typically completes the reset and enables the part by the time the power supply is above v por . however, when it is required to reset the part by lowering the power supply, it is necessary to lower it below 2 v typical. remark: the system level reset pulse should be > 4 ? s for the chip to guarantee reset condition. 7.6 reset input a reset can be accomplished by holding the reset pin low for a minimum of t w(rst) . the pca9629a registers and i 2 c-bus state machine are held in their default state until the reset input is once ag ain high. the reset input has a 200 k ? internal pull-up to v dd pin. the maximum wait time after reset pin is released is 1 ms (typical).
pca9629a all information provided in this document is subject to legal disclaimers. ? nxp semiconductors n.v. 2014. all rights re served. product data sheet rev. 2 ? 21 march 2014 36 of 59 nxp semiconductors pca9629a fm+ i 2 c-bus advanced stepper motor controller 7.7 software reset the software reset call allows all the devices in the i 2 c-bus to be reset to the power-up state value through a specific formatted i 2 c-bus command. to be pe rformed correctly, it implies that the i 2 c-bus is functional and that there is no device hanging the bus. the maximum wait time after so ftware reset is 1 ms (typical). the swrst call function is defined as the following: 1. a start command is sent by the i 2 c-bus master. 2. the reserved general call i 2 c-bus address ?0000 000? with the r/w bit set to ?0? (write) is sent by the i 2 c-bus master. 3. the pca9629a device(s) acknowledge(s) after seeing the general call address ?0000 0000? (00h) only. if the r/w bit is set to ?1? (read), no acknowledge is returned to the i 2 c-bus master. 4. once the general call address has been sent and acknowledged, the master sends one byte. the value of the byte must be equal to 06h. the pca9629a acknowledges this value only. if the byte is not equal to 06h, the pca9629a does not acknowledge it. if more than one byte of data is sent, the pca9629a does not acknowledge anymore. 5. once the right byte has been sent and correctly acknowledged, the master sends a stop condition to end the software reset sequence: the pca9629a then resets to the default value (power-up value) and is ready to be addressed again within the specified bus free time. if the master sends a repeated start instead, no reset is performed. the i 2 c-bus master must interpret a non-acknowledge from the pca9629a (at any time) as a ?software reset abort?. the pca9629a does not initiate a software reset. 7.8 interrupt output the open-drain active low interrupt is activated by the following three mechanisms: ? watchdog timer: if the watchdog timer is enabled and the timer times out, then an interrupt is generated and the watchdog interrupt flag bit [5] is set in the interrupt status register (intstat). ? motor stop: if the motor stop interrupt is enabled in the mask interrupt register (msk) and bit [7] in mcntl register changes state fr om 1 to 0, then an interrupt is generated and interrupt flag bit [4] is set in t he interrupt status register (intstat). ? gpios: one or more of pins p0 to p3 can generate an interrupt if the following conditions are met: ? the pin is configured as an input in th e i/o configuration register (io_cfg). ? the interrupt from that pin is enabled in the mask interrupt register (msk). ? the pin?s state change (rising edge or falling edge) is programmed to generate an interrupt in the interrupt mode register (intmode). the interrupt int pin output can be enabled or disa bled using mode register bit [5] (0 = enable; 1 = disable). the interrupt flag bit is set in the intstat register when one of the interrupts is generated from p0 to p3, motor stops or watchdog timer time-out. remark: if the state of the pin does not match th e contents of the input port register, changing an i/o from an output to an input may cause a false interrupt to occur.
pca9629a all information provided in this document is subject to legal disclaimers. ? nxp semiconductors n.v. 2014. all rights re served. product data sheet rev. 2 ? 21 march 2014 37 of 59 nxp semiconductors pca9629a fm+ i 2 c-bus advanced stepper motor controller 7.9 phase sequence generator the pca9629a phase sequence generator uses th e on-chip oscillator and control logic to generate logic waveforms needed to support the following three types of stepper motor drive formats: ? one-phase drive, also called ?wave drive? ? two-phase drive ? half-step drive these logic level outputs are used to drive high current power driver stages to provide required drive current to the stepper motor coils. 7.9.1 one-phase drive (wave drive) in one-phase drive method, only one windi ng is energized at any given time. the advantage of wave drive mode is its simplicity. the disadvan tage of wave drive mode is that in the unipolar wound motor only 25 %, and in the bipolar motor only 50 % of the total motor winding are used at any given time. th is means that maximu m torque output from the motor is not made available. since only one winding is energized, holding torque and working torque are reduced by 30 %. this can, within limits, be compensated by increasing supply voltage. the advantage of this form of drive is higher efficiency, but at the cost of reduc ed step accuracy. number of steps shown = 4 for simplicity. fig 16. wave drive step sequence waveforms table 34. logic output sequence for wave drive winding step 1 2 3 4 5 6 7 8 winding d 1 0 0 0 1 0 0 0 winding c 0 1 0 0 0 1 0 0 winding b 0 0 1 0 0 0 1 0 winding a 0 0 0 1 0 0 0 1 a b c d step pulses output a output b output c output d output disabled rotor position 002aae757
pca9629a all information provided in this document is subject to legal disclaimers. ? nxp semiconductors n.v. 2014. all rights re served. product data sheet rev. 2 ? 21 march 2014 38 of 59 nxp semiconductors pca9629a fm+ i 2 c-bus advanced stepper motor controller 7.9.2 two-phase drive in two-phase drive method, two windings are energized at any given time. in case of two-phase drive, the torque output of the un ipolar wound motor is lower than the bipolar motor (for motors with the same winding parameters) since the unipolar motor uses only 50 % of the available winding, while the bipolar motor uses the entire winding. number of steps shown = 4 for simplicity. fig 17. two-phase drive step sequence waveforms table 35. logic output sequence for two-phase drive winding step 1 2 3 4 5 6 7 8 winding d 1 0 0 1 1 0 0 1 winding c 1 1 0 0 1 1 0 0 winding b 0 1 1 0 0 1 1 0 winding a 0 0 1 1 0 0 1 1 a b c d step pulses output a output b output c output d output disabled rotor position 002aae758
pca9629a all information provided in this document is subject to legal disclaimers. ? nxp semiconductors n.v. 2014. all rights re served. product data sheet rev. 2 ? 21 march 2014 39 of 59 nxp semiconductors pca9629a fm+ i 2 c-bus advanced stepper motor controller 7.9.3 half-step drive (one-phase and two-phase on) ?half-step drive? combines both wave and two-phase (one-phase and two-phase on) drive modes. this results in angular movements that are half of those in 1- or 2-phases-on drive modes. half-stepping can reduce a phenomen on referred to as resonance, which can be experienced in 1- or 2-phases-on drive modes. as the name implies, in this m ode it is possible to step a motor in a half-step sequence, thus producing half steps, for example 3.75 ? steps from a 7.5 ? motor. a possible drawback for some applications is that the holding torque is alternately strong and weak on successive motor steps. this is because on full steps only one phase winding is energized, while on the half-steps two stator windings are energized. also, because current and flux paths differ on alternate steps, accuracy is worse than when full stepping. four step stepper motor run with half-step waveforms increases the number of steps to eight. fig 18. half-step drive sequence waveforms table 36. logic output sequence for half-step drive winding step 1 2 3 4 5 6 7 8 winding d 1 1 0 0 0 0 0 1 winding c 0 1 1 1 0 0 0 0 winding b 0 0 0 1 1 1 0 0 winding a 0 0 0 0 0 1 1 1 step pulses output disabled rotor position 002aah558 d c b a output d output c output b output a
pca9629a all information provided in this document is subject to legal disclaimers. ? nxp semiconductors n.v. 2014. all rights re served. product data sheet rev. 2 ? 21 march 2014 40 of 59 nxp semiconductors pca9629a fm+ i 2 c-bus advanced stepper motor controller 8. characteristics of the i 2 c-bus the i 2 c-bus is for two-way, two- line communication between different ics or modules. the two lines are a serial data line (sda) and a serial clock line (scl). both lines must be connected to a positive supply via a pull-up re sistor when connected to the output stages of a device. data transfer may be initiated only when the bus is not busy. 8.1 bit transfer one data bit is transferred during each clock pulse. the data on the sda line must remain stable during the high period of the clock pulse as changes in the data line at this time will be interpreted as control signals (see figure 19 ). 8.1.1 start and stop conditions both data and clock lines remain high when the bus is not busy. a high-to-low transition of the data line while the clock is high is defined as the start condition (s). a low-to-high transition of the data line while the clock is high is defined as the stop condition (p) (see figure 20 ). 8.2 system configuration a device generating a message is a ?transmitter ?; a device receiving is the ?receiver?. the device that controls the message is the ?master? and the devices which are controlled by the master are the ?slaves? (see figure 21 ). fig 19. bit transfer mba607 data line stable; data valid change of data allowed sda scl fig 20. definition of start and stop conditions mba608 sda scl p stop condition s start condition
pca9629a all information provided in this document is subject to legal disclaimers. ? nxp semiconductors n.v. 2014. all rights re served. product data sheet rev. 2 ? 21 march 2014 41 of 59 nxp semiconductors pca9629a fm+ i 2 c-bus advanced stepper motor controller 8.3 acknowledge the number of data bytes transferred betwe en the start and the stop conditions from transmitter to receiver is not limited. ea ch byte of eight bits is followed by one acknowledge bit. the acknowledge bit is a high level put on the bus by the transmitter, whereas the master generates an extra acknowledge related clock pulse. a slave receiver which is addressed must gen erate an acknowledge af ter the reception of each byte. also a master must generate an acknowledge after the reception of each byte that has been clocked out of the slave transm itter. the device that acknowledges has to pull down the sda line during the acknowledge clock pulse, so that the sda line is stable low during the high period of the acknowledge related clock pulse; set-up time and hold time must be taken into account. a master receiver must signal an end of da ta to the transmitter by not generating an acknowledge on the last byte that has been cloc ked out of the slave. in this event, the transmitter must leave the data line high to enable the master to generate a stop condition. 9. bus transactions data is transmitted to the pca9629a registers using ?write byte? transfers. data is read from the pca9629a registers using ?read byte? transfers. fig 21. system configuration 002aaa966 master transmitter/ receiver slave receiver slave transmitter/ receiver master transmitter master transmitter/ receiver sda scl i 2 c-bus multiplexer slave fig 22. acknowledgement on the i 2 c-bus 002aaa987 s start condition 9 8 2 1 clock pulse for acknowledgement not acknowledge acknowledge data output by transmitter data output by receiver scl from master
pca9629a all information provided in this document is subject to legal disclaimers. ? nxp semiconductors n.v. 2014. all rights re served. product data sheet rev. 2 ? 21 march 2014 42 of 59 nxp semiconductors pca9629a fm+ i 2 c-bus advanced stepper motor controller 10. application design-in information 10.1 stepper motor coil driver considerations when choosing a motor and coil driver circuit fo r an application, it is necessary to choose the coil driver such that the minimum expected drive strength of the coil driver over the anticipated operating conditions exceeds the minimum coil current in the application. for the nmos fets, the gate voltage affects the fet drive strength, so it is necessary to evaluate the fet with its gate at the minimum v dd planned for the pca9629a application, because the pca9629a cannot drive the gate higher than the v dd . for example, in most applicat ions a 5 v power supply would have a specification like 5v ? 10 % or 5 v ? 20 %, so it would be necessary to verify that the on-resistance or current sinking capability of the fet with a gate voltage of 4.75 v or 4.5 v, whichever applies, is capable of sinking all of the curr ent that the motor might require. since fets present a capacitive load to the outputs of the pca9629a, the output asymptotically approaches the v dd of the part, so eventually the full v dd appears at the output. however, for darlington bipolar coil drivers the input current represents a static current load that reduces the v oh . so depending upon the input current of the darlington bipolar coil driver, the pca9629a output voltage will always be less than v dd . this in turn reduces the input current and also reduces the available drive current from the darlington bipolar coil driver, so the lowest gain for the driver and the input current gain product must be considered in verifying that the maximum motor current can be sunk by the driver. device address configured as 0100 0000b for this example. fig 23. typical application 002aah546 pca9629a v dd scl sda int reset ad1 ad0 master controller v ss p0 p1 p2 p3 12 v external high current driver generates intp1 sensor 1 electrical stepper motor position b sensor 0 generates intp0 position a out0 out1 out2 out3 5 v 2 k 1.1 k 1.6 k 1.6 k 3.3 v int rst m
pca9629a all information provided in this document is subject to legal disclaimers. ? nxp semiconductors n.v. 2014. all rights re served. product data sheet rev. 2 ? 21 march 2014 43 of 59 nxp semiconductors pca9629a fm+ i 2 c-bus advanced stepper motor controller 10.2 considerations when using gpio pins p0 to p3 as inputs for proper operation of gpio pins as inputs, the signals at the inputs must be free from any glitches or noise. the signals must be logic level inputs. for example, outputs from sensors must provid e logic level signals at the input pins of pca9629a. this may require signal conditio ning at the outputs of sensors. another example is when using p0 to p3 for key switch sensing. the inputs of pca9629a do not provide key de-bouncing on p2 and p3 inputs. this is external to pca9629a and is user-defined and supplied. 10.3 priority of ramp control, interr upt-based control, loop delay and emergency stop during ramp-up and ramp-down phases of operation, the interrupt-based controls do not affect the motor run. interrup ts that occur during ramp-up or ramp-down are ignored. once the ramp-up operation is finished (when the moto r is running at the final speed), then the interrupts that occur are acted upon. a stop re quest from the microcontroller (writing 0 to mcntl[7], 1 to mcntl[5] or watchdog stop motor mode) is the only event that affects the motor operation during ramp-up and ramp-down. during ramp-up, the microcontroller can issue a stop request. the following sequence of events takes place in the given order: 1. if emergency stop is enabled (mcntl[5] = 1), the motor stops immediately (even if ramp-down is enabled) or if watchdog stop motor mode is the same as emergency stop except the output phases are all zeros; priority 1. 2. if normal stop is enabled (mcntl[7] = 0) and ramp-down is enabled, then the motor starts to ramp down to a stop; priority 2. 3. if normal stop is enabled (mcntl[7] = 0) and ramp-down is disabled, then motor stops immediately; priority 3. during ramp-down, the microcontroller can issue a stop request. the following sequence of events takes place in the given order: 1. if emergency stop is enabled (mcntl[5] = 1), the motor stops immediately (it does not finish ramping down) or if watchdog st op motor mode is th e same as emergency stop except the output phases are all zeros; priority 1. 2. if normal stop is enabled (mcntl[7] = 0) and ramp-down is enabled, then the motor continues to ramp down to a stop; priority 2. in the duration between end of ramp-up and be ginning of ramp-down, the interrupt-based controls (if enabled) can affect the operation of the motor. in this region, section 7.3.8.1 gives the priority of events when both interrupt-based control and ramp control are enabled together. consider the following exam ple (the motor is programmed to reverse rotation on an interrupt): ? motor programmed for cw rotations; ramp-up and ramp-down enabled; reverse rotation on interrupt p0/p1. ? when motor is started, it starts ramping up and when ramp-up is completed it rotates at the final speed.
pca9629a all information provided in this document is subject to legal disclaimers. ? nxp semiconductors n.v. 2014. all rights re served. product data sheet rev. 2 ? 21 march 2014 44 of 59 nxp semiconductors pca9629a fm+ i 2 c-bus advanced stepper motor controller ? if interrupt p0 happens, then it reverses rotation right away and start rotating in the ccw direction for the specified number of steps. ? before the specified number of steps is comp leted in the ccw dire ction, if interrupt p1 happens, then it again reverses its rota tion right away and start rotating in the cw direction for the specified number of steps. ? if no other interrupt happens, the motor fi nishes executing the specified number of steps in the cw direction and then starts to ramp down. in the above example, if extra steps are enab led for interrupts p0 and p1, then when the interrupts happen the motor execut es the extra steps in the cu rrent direction of rotation and then reverses its direction. 11. limiting values 12. static characteristics table 37. limiting values in accordance with the absolute ma ximum rating system (iec 60134). symbol parameter conditions min max unit v dd supply voltage ? 0.5 +6.0 v v i/o voltage on an input/output pin v ss ? 0.5 5.5 v i i/o input/output current pn, outn, int , scl, sda - ? 50 ma i i input current - ? 20 ma i ss ground supply current - 210 ma p tot total power dissipation - 400 mw t stg storage temperature ? 65 +150 ?c t amb ambient temperature ? 40 +85 ?c table 38. static characteristics v dd = 4.5 v to 5.5 v; v ss =0v; t amb = ? 40 ? c to +85 ? c; unless otherwise specified. symbol parameter conditions min typ max unit supply v dd supply voltage 4.5 - 5.5 v i dd supply current operating mode; no load; f scl = 1 mhz; v dd =5.5v -610ma i stb standby current no load; f scl = 0 khz; mode[6] = 1; osc off; v i =v dd or v ss ; v dd =5.5v - 600 800 ? a v por power-on reset voltage no load; v i =v dd or v ss -2.3-v v pdr power-down reset voltage no load; v i =v dd or v ss [1] -2.0-v input scl; input/output sda v il low-level input voltage ? 0.5 - +0.3v dd v v ih high-level input voltage 0.7v dd -5.5v i ol low-level output current v ol = 0.4 v; v dd =5.0v 30 40 - ma i l leakage current v i =v dd or v ss ? 1-+1 ? a c i input capacitance v i =v ss -6-pf
pca9629a all information provided in this document is subject to legal disclaimers. ? nxp semiconductors n.v. 2014. all rights re served. product data sheet rev. 2 ? 21 march 2014 45 of 59 nxp semiconductors pca9629a fm+ i 2 c-bus advanced stepper motor controller [1] in order to reset part, v dd must be lowered to 1.4 v. [2] each bit must be limited to a maximum of 25 ma and the to tal package limited to 210 ma due to internal busing limits. [3] for i oh = ? 25 ma, the minimum v oh = v dd ? 0.7 v with v dd = 4.5 v to 5.5 v. out0 to out3 outputs i ol low-level output current v ol = 0.4 v; v dd =4.5v [2] 20 22 - ma v ol = 0.5 v; v dd =4.5v [2] 25 28 - ma i ol(tot) total low-level output current v ol = 0.5 v; v dd =4.5v [2] - - 120 ma v oh high-level output voltage i oh = ? 10 ma; v dd =4.5v [3] 4.0 - - v p0 to p3 i/os i ol low-level output current v ol = 0.5 v; v dd =4.5v [2] 25 28 - ma i ol(tot) total low-level output current v ol = 0.5 v; v dd =4.5v [2] - - 120 ma v oh high-level output voltage i oh = ? 10 ma; v dd =4.5v [3] 4.0 - - v i oz off-state output current 3-state; v oh =v dd or v ss ? 10 - +10 ? a c io input/output capacitance 3-state pins as inputs - 5 - pf address inputs v il low-level input voltage ? 0.5 - +0.3v dd v v ih high-level input voltage 0.7v dd -5.5v i li input leakage current ? 1-+1 ? a c i input capacitance - 3 - pf reset input v il low-level input voltage ? 0.5 - +0.3v dd v v ih high-level input voltage 0.7v dd -5.5v i li input leakage current ? 1-+1 ? a c i input capacitance - 3 - pf i lil low-level input leakage current v i =v ss ? 7- ? 45 ? a int output i ol low-level output current v ol = 0.5 v; v dd =4.5v 24 28 - ma i oh high-level output current open-drain; v oh =v dd ? 10 - +10 ? a c o output capacitance - 7 - pf table 38. static characteristics ?continued v dd = 4.5 v to 5.5 v; v ss =0v; t amb = ? 40 ? c to +85 ? c; unless otherwise specified. symbol parameter conditions min typ max unit
pca9629a all information provided in this document is subject to legal disclaimers. ? nxp semiconductors n.v. 2014. all rights re served. product data sheet rev. 2 ? 21 march 2014 46 of 59 nxp semiconductors pca9629a fm+ i 2 c-bus advanced stepper motor controller fig 24. out[0:3] output equival ent circuit fig 25. p[0:3] input/output equivalent circuit 002aag587 data[0:3] output control out[0:3] (output) v dd = 5.0 v pmos nmos 002aag588 data[0:3] i/o control p[0:3] (i/o) v dd = 5.0 v pmos nmos enable input data [0:3]
pca9629a all information provided in this document is subject to legal disclaimers. ? nxp semiconductors n.v. 2014. all rights re served. product data sheet rev. 2 ? 21 march 2014 47 of 59 nxp semiconductors pca9629a fm+ i 2 c-bus advanced stepper motor controller 13. dynamic characteristics [1] minimum scl clock frequency is limited by t he bus time-out feature, which resets the serial bus interface if either sda or s cl is held low for a minimum of 25 ms. disable bu s time-out feature for dc operation. [2] t vd;ack = time for acknowledgement signal from scl low to sda (out) low. [3] t vd;dat = minimum time for sda data out to be valid following scl low. [4] in order to bridge the undefined region of the scl falling edge, a master device must internally provide a hold time of at l east 300 ns for the sda signal (refer to the v il of the scl signal). [5] the maximum t f for the sda and scl bus lines is specif ied at 300 ns. the maximum fall time (t f ) for the sda output stage is specified at 250 ns. this allows series protection resi stors to be connected between the sda and the scl pins and the sda/scl bus lines without exceeding the maximum specified t f . [6] c b = total capacitance of one bus line in pf. [7] input filters on the sda and scl inputs suppress noise spikes less than 50 ns. [8] the time delay from one of the p[1:0] inputs edge changes to the motor control outputs out[3:0] change. typical value = 6.5 ? s. table 39. dynamic characteristics v dd = 4.5 v to 5.5 v; v ss =0v; t amb = ? 40 ? c to +85 ? c; unless otherwise specified. oscillator frequency = 1 mhz ? 3% at ? 40 ? c to +85 ? c (see figure 28 ). symbol parameter conditions standard-mode i 2 c-bus fast-mode i 2 c-bus fast-mode plus i 2 c-bus unit min max min max min max f scl scl clock frequency [1] 0 100 0 400 0 1000 khz t buf bus free time between a stop and start condition 4.7 - 1.3 - 0.5 - ? s t hd;sta hold time (repeated) start condition 4.0 - 0.6 - 0.26 - ? s t su;sta set-up time for a repeated start condition 4.7 - 0.6 - 0.26 - ? s t su;sto set-up time for stop condition 4.0 - 0.6 - 0.26 - ? s t hd;dat data hold time 0 - 0 - 0 - ns t vd;ack data valid acknowledge time [2] 0.3 3.45 0.1 0.9 0.05 0.45 ? s t vd;dat data valid time [3] 0.3 3.45 0.1 0.9 0.05 0.45 ? s t su;dat data set-up time 250 - 100 - 50 - ns t low low period of the scl clock 4.7 - 1.3 - 0.5 - ? s t high high period of the scl clock 4.0 - 0.6 - 0.26 - ? s t f fall time of both sda and scl signals [4] [5] - 300 20 + 0.1c b [6] 300 - 120 ns t r rise time of both sda and scl signals - 1000 20 + 0.1c b [6] 300 - 120 ns t sp pulse width of spikes that must be suppressed by the input filter [7] -50 -50-50ns t d(o) output delay time interrupt based motor control latency [8] 5.7 7.4 5.7 7.4 5.7 7.4 ? s reset t w(rst) reset pulse width 2.3 - 2.3 - 2.3 - ? s t rec(rst) reset recovery time 1.2 - 1.2 - 1.2 - ms
pca9629a all information provided in this document is subject to legal disclaimers. ? nxp semiconductors n.v. 2014. all rights re served. product data sheet rev. 2 ? 21 march 2014 48 of 59 nxp semiconductors pca9629a fm+ i 2 c-bus advanced stepper motor controller fig 26. definition of timing t sp t buf t hd;sta p p s t low t r t hd;dat t f t high t su;dat t su;sta sr t hd;sta t su;sto sda scl 002aaa986 0.7 v dd 0.3 v dd 0.7 v dd 0.3 v dd fig 27. reset timing sda scl 002aag778 50 % 30 % 50 % 50 % 50 % t rec(rst) t w(rst) reset p0 to p3 output off start ack or read cycle v dd =5v ? 10 % fig 28. typical oscillator frequency versus temperature 1.00 0.99 1.01 1.02 f osc (mhz) 0.98 t amb (c) ?40 85 60 10 35 ?15 aaa-010095 25
pca9629a all information provided in this document is subject to legal disclaimers. ? nxp semiconductors n.v. 2014. all rights re served. product data sheet rev. 2 ? 21 march 2014 49 of 59 nxp semiconductors pca9629a fm+ i 2 c-bus advanced stepper motor controller 14. test information r l = load resistance. c l = load capacitance includes jig and probe capacitance. r t = termination resistance should be equal to the output impedance z o of the pulse generators. fig 29. test circuitry for switch ing times for gpio pins p0 to p3 r l for sda and scl = 165 ? (30 ma or less current). c l = load capacitance includes jig and probe capacitance. r t = termination resistance should be equal to the output impedance z o of the pulse generators. fig 30. test circuitry for swit ching times for sda and scl pulse generator v o c l 50 pf r l 500 002aac019 r t v i v dd dut 2v dd open v ss 500
pca9629a all information provided in this document is subject to legal disclaimers. ? nxp semiconductors n.v. 2014. all rights re served. product data sheet rev. 2 ? 21 march 2014 50 of 59 nxp semiconductors pca9629a fm+ i 2 c-bus advanced stepper motor controller 15. package outline fig 31. package outline sot403-1 (tssop16) unit a 1 a 2 a 3 b p cd (1) e (2) (1) eh e ll p qz ywv references outline version european projection issue date iec jedec jeita mm 0.15 0.05 0.95 0.80 0.30 0.19 0.2 0.1 5.1 4.9 4.5 4.3 0.65 6.6 6.2 0.4 0.3 0.40 0.06 8 0 o o 0.13 0.1 0.2 1 dimensions (mm are the original dimensions) notes 1. plastic or metal protrusions of 0.15 mm maximum per side are not included. 2. plastic interlead protrusions of 0.25 mm maximum per side are not included. 0.75 0.50 sot403-1 mo-153 99-12-27 03-02-18 w m b p d z e 0.25 18 16 9 a a 1 a 2 l p q detail x l (a ) 3 h e e c v m a x a y 0 2.5 5 mm scale tssop16: plastic thin shrink small outline package; 16 leads; body width 4.4 mm sot403-1 a max. 1.1 pin 1 index
pca9629a all information provided in this document is subject to legal disclaimers. ? nxp semiconductors n.v. 2014. all rights re served. product data sheet rev. 2 ? 21 march 2014 51 of 59 nxp semiconductors pca9629a fm+ i 2 c-bus advanced stepper motor controller 16. handling information all input and output pins are protected ag ainst electrostatic discharge (esd) under normal handling. when handling ensure that the appropriate precautions are taken as described in jesd625-a or equivalent standards. 17. soldering of smd packages this text provides a very brief insight into a complex technology. a more in-depth account of soldering ics can be found in application note an10365 ?surface mount reflow soldering description? . 17.1 introduction to soldering soldering is one of the most common methods through which packages are attached to printed circuit boards (pcbs), to form electr ical circuits. the soldered joint provides both the mechanical and the electrical connection. th ere is no single sold ering method that is ideal for all ic packages. wave soldering is often preferred when through-hole and surface mount devices (smds) are mixed on one printed wiring board; however, it is not suitable for fine pitch smds. reflow soldering is ideal for the small pitches and high densities that come with increased miniaturization. 17.2 wave and reflow soldering wave soldering is a joining technology in which the joints are made by solder coming from a standing wave of liquid solder. the wave soldering process is suitable for the following: ? through-hole components ? leaded or leadless smds, which are glued to the surface of the printed circuit board not all smds can be wave soldered. packages with solder balls, and some leadless packages which have solder lands underneath the body, cannot be wave soldered. also, leaded smds with leads having a pitch smaller than ~0.6 mm cannot be wave soldered, due to an increased pr obability of bridging. the reflow soldering process involves applying solder paste to a board, followed by component placement and exposure to a temperature profile. leaded packages, packages with solder balls, and leadless packages are all reflow solderable. key characteristics in both wave and reflow soldering are: ? board specifications, in cluding the board finish , solder masks and vias ? package footprints, including solder thieves and orientation ? the moisture sensitivit y level of the packages ? package placement ? inspection and repair ? lead-free soldering versus snpb soldering 17.3 wave soldering key characteristics in wave soldering are:
pca9629a all information provided in this document is subject to legal disclaimers. ? nxp semiconductors n.v. 2014. all rights re served. product data sheet rev. 2 ? 21 march 2014 52 of 59 nxp semiconductors pca9629a fm+ i 2 c-bus advanced stepper motor controller ? process issues, such as application of adhe sive and flux, clinching of leads, board transport, the solder wave parameters, and the time during which components are exposed to the wave ? solder bath specifications, including temperature and impurities 17.4 reflow soldering key characteristics in reflow soldering are: ? lead-free versus snpb solderi ng; note that a lead-free reflow process usually leads to higher minimum peak temperatures (see figure 32 ) than a snpb process, thus reducing the process window ? solder paste printing issues including smearing, release, and adjusting the process window for a mix of large and small components on one board ? reflow temperature profile; this profile includ es preheat, reflow (in which the board is heated to the peak temperature) and cooling down. it is imperative that the peak temperature is high enough for the solder to make reliable solder joints (a solder paste characteristic). in addition, the peak temperature must be low enough that the packages and/or boards are not damaged. the peak temperature of the package depends on package thickness and volume and is classified in accordance with ta b l e 4 0 and 41 moisture sensitivity precautions, as indicat ed on the packing, must be respected at all times. studies have shown that small packages reach higher temperatures during reflow soldering, see figure 32 . table 40. snpb eutectic process (from j-std-020d) package thickness (mm) package reflow temperature ( ?c) volume (mm 3 ) < 350 ? 350 < 2.5 235 220 ? 2.5 220 220 table 41. lead-free process (from j-std-020d) package thickness (mm) package reflow temperature ( ?c) volume (mm 3 ) < 350 350 to 2000 > 2000 < 1.6 260 260 260 1.6 to 2.5 260 250 245 > 2.5 250 245 245
pca9629a all information provided in this document is subject to legal disclaimers. ? nxp semiconductors n.v. 2014. all rights re served. product data sheet rev. 2 ? 21 march 2014 53 of 59 nxp semiconductors pca9629a fm+ i 2 c-bus advanced stepper motor controller for further information on temperature profiles, refer to application note an10365 ?surface mount reflow soldering description? . msl: moisture sensitivity level fig 32. temperature profiles for large and small components 001aac844 temperature time minimum peak temperature = minimum soldering temperature maximum peak temperature = msl limit, damage level peak temperature
pca9629a all information provided in this document is subject to legal disclaimers. ? nxp semiconductors n.v. 2014. all rights re served. product data sheet rev. 2 ? 21 march 2014 54 of 59 nxp semiconductors pca9629a fm+ i 2 c-bus advanced stepper motor controller 18. soldering: pcb footprints fig 33. pcb footprint for sot403-1 (tssop16) dimensions in mm ay by d1 d2 gy hy p1 c gx sot403-1_fr hx sot403-1 solder land occupied area footprint information for reflow soldering of tssop16 package ay by gy c hy hx gx p1 generic footprint pattern refer to the package outline drawing for actual layout p2 (0.125) (0.125) d1 d2 (4x) p2 7.200 4.500 1.350 0.400 0.600 5.600 5.300 7.450 5.800 0.650 0.750
pca9629a all information provided in this document is subject to legal disclaimers. ? nxp semiconductors n.v. 2014. all rights re served. product data sheet rev. 2 ? 21 march 2014 55 of 59 nxp semiconductors pca9629a fm+ i 2 c-bus advanced stepper motor controller 19. abbreviations 20. revision history table 42. abbreviations acronym description ai auto-increment ccw counter-clockwise cdm charged-device model cmos complementary metal-oxide semiconductor cpu central processing unit cw clockwise dmos double-diffused metal-oxide semiconductor dut device under test esd electrostatic discharge fet field-effect transistor fm+ fast-mode plus gpio general purpose input/output hbm human body model hvac heating, venting and air conditioning i/o input/output i 2 c-bus inter-integrated circuit bus ic integrated circuit led light emitting diode lsb least significant bit nmos negative-channel metal-oxide semiconductor msb most significant bit pcb printed-circuit board pps pulses per second pwm pulse width modulator por power-on reset table 43. revision history document id release date data sheet status change notice supersedes pca9629a v.2 20140321 product data sheet - pca9629a v.1 modifications: ? section 2 ? features and benefits ? , sixth bullet item: changed from ?344.8 kpps? to ?333.3 kpps? (this is a correction to documentation only; no change to device) pca9629a v.1 20140225 product data sheet - -
pca9629a all information provided in this document is subject to legal disclaimers. ? nxp semiconductors n.v. 2014. all rights re served. product data sheet rev. 2 ? 21 march 2014 56 of 59 nxp semiconductors pca9629a fm+ i 2 c-bus advanced stepper motor controller 21. legal information 21.1 data sheet status [1] please consult the most recently issued document before initiating or completing a design. [2] the term ?short data sheet? is explained in section ?definitions?. [3] the product status of device(s) described in this document may have changed since this document was published and may differ in case of multiple device s. the latest product status information is available on the internet at url http://www.nxp.com . 21.2 definitions draft ? the document is a draft versi on only. the content is still under internal review and subject to formal approval, which may result in modifications or additions. nxp semiconductors does not give any representations or warranties as to the accuracy or completeness of information included herein and shall hav e no liability for the consequences of use of such information. short data sheet ? a short data sheet is an extract from a full data sheet with the same product type number(s) and title. a short data sheet is intended for quick reference only and should not be relied upon to contain detailed and full information. for detailed and full information see the relevant full data sheet, which is available on request vi a the local nxp semiconductors sales office. in case of any inconsistency or conflict with the short data sheet, the full data sheet shall prevail. product specification ? the information and data provided in a product data sheet shall define the specification of the product as agreed between nxp semiconductors and its customer , unless nxp semiconductors and customer have explicitly agreed otherwis e in writing. in no event however, shall an agreement be valid in which the nxp semiconductors product is deemed to offer functions and qualities beyond those described in the product data sheet. 21.3 disclaimers limited warranty and liability ? information in this document is believed to be accurate and reliable. however, nxp semiconductors does not give any representations or warranties, expressed or implied, as to the accuracy or completeness of such information and shall have no liability for the consequences of use of such info rmation. nxp semiconductors takes no responsibility for the content in this document if provided by an information source outside of nxp semiconductors. in no event shall nxp semiconductors be liable for any indirect, incidental, punitive, special or consequential damages (including - without limitation - lost profits, lost savings, business interruption, costs related to the removal or replacement of any products or rework charges) whether or not such damages are based on tort (including negligence), warranty, breach of contract or any other legal theory. notwithstanding any damages that customer might incur for any reason whatsoever, nxp semiconductors? aggregate and cumulative liability towards customer for the products described herein shall be limited in accordance with the terms and conditions of commercial sale of nxp semiconductors. right to make changes ? nxp semiconductors reserves the right to make changes to information published in this document, including without limitation specifications and product descriptions, at any time and without notice. this document supersedes and replaces all information supplied prior to the publication hereof. suitability for use ? nxp semiconductors products are not designed, authorized or warranted to be suitable for use in life support, life-critical or safety-critical systems or equipment, nor in applications where failure or malfunction of an nxp semiconductors product can reasonably be expected to result in personal injury, death or severe property or environmental damage. nxp semiconductors and its suppliers accept no liability for inclusion and/or use of nxp semiconducto rs products in such equipment or applications and therefore such inclusion and/or use is at the customer?s own risk. applications ? applications that are described herein for any of these products are for illustrative purpos es only. nxp semiconductors makes no representation or warranty that such applications will be suitable for the specified use without further testing or modification. customers are responsible for the design and operation of their applications and products using nxp semiconductors products, and nxp semiconductors accepts no liability for any assistance with applications or customer product design. it is customer?s sole responsibility to determine whether the nxp semiconductors product is suitable and fit for the customer?s applications and products planned, as well as fo r the planned application and use of customer?s third party customer(s). customers should provide appropriate design and operating safeguards to minimize the risks associated with their applications and products. nxp semiconductors does not accept any liability related to any default, damage, costs or problem which is based on any weakness or default in the customer?s applications or products, or the application or use by customer?s third party customer(s). customer is responsible for doing all necessary testing for the customer?s applic ations and products using nxp semiconductors products in order to av oid a default of the applications and the products or of the application or use by customer?s third party customer(s). nxp does not accept any liability in this respect. limiting values ? stress above one or more limiting values (as defined in the absolute maximum ratings system of iec 60134) will cause permanent damage to the device. limiting values are stress ratings only and (proper) operation of the device at these or any other conditions above those given in the recommended operating conditions section (if present) or the characteristics sections of this document is not warranted. constant or repeated exposure to limiting values will permanently and irreversibly affect the quality and reliability of the device. terms and conditions of commercial sale ? nxp semiconductors products are sold subject to the gener al terms and conditions of commercial sale, as published at http://www.nxp.com/profile/terms , unless otherwise agreed in a valid written individual agreement. in case an individual agreement is concluded only the terms and conditions of the respective agreement shall apply. nxp semiconductors hereby expressly objects to applying the customer?s general terms and conditions with regard to the purchase of nxp semiconducto rs products by customer. no offer to sell or license ? nothing in this document may be interpreted or construed as an offer to sell products t hat is open for acceptance or the grant, conveyance or implication of any lic ense under any copyrights, patents or other industrial or intellectual property rights. document status [1] [2] product status [3] definition objective [short] data sheet development this document contains data from the objecti ve specification for product development. preliminary [short] data sheet qualification this document contains data from the preliminary specification. product [short] data sheet production this document contains the product specification.
pca9629a all information provided in this document is subject to legal disclaimers. ? nxp semiconductors n.v. 2014. all rights re served. product data sheet rev. 2 ? 21 march 2014 57 of 59 nxp semiconductors pca9629a fm+ i 2 c-bus advanced stepper motor controller export control ? this document as well as the item(s) described herein may be subject to export control regu lations. export might require a prior authorization from competent authorities. non-automotive qualified products ? unless this data sheet expressly states that this specific nxp semicon ductors product is automotive qualified, the product is not suitable for automotive use. it is neither qualified nor tested in accordance with automotive testing or application requirements. nxp semiconductors accepts no liabili ty for inclusion and/or use of non-automotive qualified products in automotive equipment or applications. in the event that customer uses t he product for design-in and use in automotive applications to automotive specifications and standards, customer (a) shall use the product without nxp semiconductors? warranty of the product for such automotive applicat ions, use and specifications, and (b) whenever customer uses the product for automotive applications beyond nxp semiconductors? specifications such use shall be solely at customer?s own risk, and (c) customer fully indemnifies nxp semiconductors for any liability, damages or failed product claims resulting from customer design and use of the product for automotive app lications beyond nxp semiconductors? standard warranty and nxp semiconduct ors? product specifications. translations ? a non-english (translated) version of a document is for reference only. the english version shall prevail in case of any discrepancy between the translated and english versions. 21.4 trademarks notice: all referenced brands, produc t names, service names and trademarks are the property of their respective owners. i 2 c-bus ? logo is a trademark of nxp semiconductors n.v. 22. contact information for more information, please visit: http://www.nxp.com for sales office addresses, please send an email to: salesaddresses@nxp.com
pca9629a all information provided in this document is subject to legal disclaimers. ? nxp semiconductors n.v. 2014. all rights re served. product data sheet rev. 2 ? 21 march 2014 58 of 59 continued >> nxp semiconductors pca9629a fm+ i 2 c-bus advanced stepper motor controller 23. contents 1 general description . . . . . . . . . . . . . . . . . . . . . . 1 2 features and benefits . . . . . . . . . . . . . . . . . . . . 1 3 applications . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2 4 ordering information . . . . . . . . . . . . . . . . . . . . . 3 4.1 ordering options . . . . . . . . . . . . . . . . . . . . . . . . 3 5 block diagram . . . . . . . . . . . . . . . . . . . . . . . . . . 3 6 pinning information . . . . . . . . . . . . . . . . . . . . . . 4 6.1 pinning . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 6.2 pin description . . . . . . . . . . . . . . . . . . . . . . . . . 4 7 functional description . . . . . . . . . . . . . . . . . . . 5 7.1 device address . . . . . . . . . . . . . . . . . . . . . . . . . 5 7.2 command register . . . . . . . . . . . . . . . . . . . . . . 6 7.3 register definitions . . . . . . . . . . . . . . . . . . . . . . 6 7.3.1 mode ? mode register . . . . . . . . . . . . . . . . . . 8 7.3.1.1 low-power sleep mode, o scillator off (bit 6) . . . 8 7.3.1.2 disable interrupt output pin (bit 5) . . . . . . . . . . 9 7.3.1.3 outputs change on stop (bit 4) . . . . . . . . . . . 9 7.3.2 watchdog timer. . . . . . . . . . . . . . . . . . . . . . . . . 9 7.3.2.1 wdtoi ? watchdog time-out interval register . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 7.3.2.2 wdcntl ? watc hdog control register . . . . 10 7.3.3 io_cfg ? i/o configuration register. . . . . . . 11 7.3.4 intmode ? interrupt mode register . . . . . . . 11 7.3.5 msk ? mask interrupt register. . . . . . . . . . . . 13 7.3.6 intstat ? interrupt status register . . . . . . . 13 7.3.7 ip ? input port register . . . . . . . . . . . . . . . . . 14 7.3.8 interrupt based motor control . . . . . . . . . . . . . 14 7.3.8.1 int_mtr_act ? interrupt motor action control register . . . . . . . . . . . . . . . . . . . . . . . . 15 7.3.9 extrasteps0, extrasteps1 ? extra steps count for intp0, intp1 control register . . . . . . . . . . . . . . . . . . . . . . . . 18 7.3.10 op_cfg_phs ? output port configuration and phase control register . . . . . . . . . . . . . . . 18 7.3.11 op_stat_to . . . . . . . . . . . . . . . . . . . . . . . . . 19 7.3.12 rucntl ? ramp-up control register . . . . . . 20 7.3.13 rdcntl ? ramp-down control register . . . . 22 7.3.14 pma ? perform mult iple of actions control register . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25 7.3.15 loopdly_cw ? loop delay timer for cw to ccw control register . . . . . . . . . . . . . . 25 7.3.16 loopdly_ccw ? loop delay timer for ccw to cw control register . . . . . . . . . . . . . . 26 7.3.17 cwscount l, cwscounth ? number of clockwise steps register . . . . . . . . 26 7.3.18 ccwscountl, ccwscounth ? number of counter-clockwise steps register. . 26 7.3.19 cwpwl, cwpwh ? clockwise step pulse width register . . . . . . . . 27 7.3.20 ccwpwl, ccwpwh ? counter-clockwise step pulse width register . 28 7.3.21 mcntl ? motor control register . . . . . . . . . . 29 7.3.21.1 mcntl[7]: start/stop motor . . . . . . . . . . . . . . 29 7.3.21.2 mcntl[6]: re-start motor . . . . . . . . . . . . . . . . 30 7.3.21.3 mcntl[5]: emergency stop . . . . . . . . . . . . . . 32 7.3.21.4 mcntl[4]: enable/disable start (bit 7) ignore caused by p0 state . . . . . . . . . . . . . . . 32 7.3.21.5 mcntl[3]: p0 polarity setting for start (bit 7) ignore. . . . . . . . . . . . . . . . . . . . . . . . . . 33 7.3.21.6 mcntl[1:0]: clockwise (cw) / counter-clockwise (ccw) . . . . . . . . . . . . . . . 33 7.3.22 subadr1 to subadr3 ? i 2 c-bus subaddress 1 to 3 . . . . . . . . . . . . . . . 33 7.3.23 allcalladr ? all call i 2 c-bus address . . 34 7.3.24 stepcount[0:3] ? step counter registers . 34 7.4 motor coil excitation . . . . . . . . . . . . . . . . . . . . 35 7.5 power-on reset. . . . . . . . . . . . . . . . . . . . . . . . 35 7.6 reset input . . . . . . . . . . . . . . . . . . . . . . . . . 35 7.7 software reset . . . . . . . . . . . . . . . . . . . . . . . . 36 7.8 interrupt output. . . . . . . . . . . . . . . . . . . . . . . . 36 7.9 phase sequence generator . . . . . . . . . . . . . . 37 7.9.1 one-phase drive (wave drive) . . . . . . . . . . . . 37 7.9.2 two-phase drive. . . . . . . . . . . . . . . . . . . . . . . 38 7.9.3 half-step drive (one-phase and two-phase on) . . . . . . . . . . . 39 8 characteristics of the i 2 c-bus . . . . . . . . . . . . 40 8.1 bit transfer . . . . . . . . . . . . . . . . . . . . . . . . . . . 40 8.1.1 start and stop conditions. . . . . . . . . . . . . 40 8.2 system configuration . . . . . . . . . . . . . . . . . . . 40 8.3 acknowledge . . . . . . . . . . . . . . . . . . . . . . . . . 41 9 bus transactions . . . . . . . . . . . . . . . . . . . . . . . 41 10 application design-in information. . . . . . . . . 42 10.1 stepper motor coil driver considerations . . . . 42 10.2 considerations when using gpio pins p0 to p3 as inputs . . . . . . . . . . . . . . . . . . . . . 43 10.3 priority of ramp control, interrupt-based control, loop delay and emergency stop . . . . 43 11 limiting values . . . . . . . . . . . . . . . . . . . . . . . . 44 12 static characteristics . . . . . . . . . . . . . . . . . . . 44 13 dynamic characteristics. . . . . . . . . . . . . . . . . 47 14 test information . . . . . . . . . . . . . . . . . . . . . . . 49 15 package outline. . . . . . . . . . . . . . . . . . . . . . . . 50 16 handling information . . . . . . . . . . . . . . . . . . . 51
nxp semiconductors pca9629a fm+ i 2 c-bus advanced stepper motor controller ? nxp semiconductors n.v. 2014. all rights reserved. for more information, please visit: http://www.nxp.com for sales office addresses, please se nd an email to: salesaddresses@nxp.com date of release: 21 march 2014 document identifier: pca9629a please be aware that important notices concerning this document and the product(s) described herein, have been included in section ?legal information?. 17 soldering of smd packages . . . . . . . . . . . . . . 51 17.1 introduction to soldering . . . . . . . . . . . . . . . . . 51 17.2 wave and reflow soldering . . . . . . . . . . . . . . . 51 17.3 wave soldering . . . . . . . . . . . . . . . . . . . . . . . . 51 17.4 reflow soldering . . . . . . . . . . . . . . . . . . . . . . . 52 18 soldering: pcb footprints. . . . . . . . . . . . . . . . 54 19 abbreviations . . . . . . . . . . . . . . . . . . . . . . . . . . 55 20 revision history . . . . . . . . . . . . . . . . . . . . . . . . 55 21 legal information. . . . . . . . . . . . . . . . . . . . . . . 56 21.1 data sheet status . . . . . . . . . . . . . . . . . . . . . . 56 21.2 definitions . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56 21.3 disclaimers . . . . . . . . . . . . . . . . . . . . . . . . . . . 56 21.4 trademarks. . . . . . . . . . . . . . . . . . . . . . . . . . . 57 22 contact information. . . . . . . . . . . . . . . . . . . . . 57 23 contents . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58


▲Up To Search▲   

 
Price & Availability of PCA9629APW

All Rights Reserved © IC-ON-LINE 2003 - 2022  

[Add Bookmark] [Contact Us] [Link exchange] [Privacy policy]
Mirror Sites :  [www.datasheet.hk]   [www.maxim4u.com]  [www.ic-on-line.cn] [www.ic-on-line.com] [www.ic-on-line.net] [www.alldatasheet.com.cn] [www.gdcy.com]  [www.gdcy.net]


 . . . . .
  We use cookies to deliver the best possible web experience and assist with our advertising efforts. By continuing to use this site, you consent to the use of cookies. For more information on cookies, please take a look at our Privacy Policy. X